{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "0dd65f13-a9d1-42d2-ade1-1c0a2719aead",
   "metadata": {},
   "source": [
    "# 导入包"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "8a3bbe9f-96ce-4a1e-98e9-c0860072f2f9",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "from sklearn.linear_model import LinearRegression\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.linear_model import ElasticNet\n",
    "from sklearn.ensemble import RandomForestRegressor\n",
    "from sklearn.ensemble import ExtraTreesRegressor\n",
    "from sklearn.ensemble import GradientBoostingRegressor\n",
    "from sklearn.svm import SVR\n",
    "import pickle"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8b95aa73-8156-4922-9470-c4f44fcc12b2",
   "metadata": {},
   "source": [
    "# 读取数据"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9281985f-12bc-4185-b5ba-baf7e8fb9b10",
   "metadata": {
    "tags": []
   },
   "source": [
    "## 利用pandas的库读取csv数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "9a23b005-67c0-4656-9faa-a323805c2027",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "student = pd.read_csv('student-mat.csv')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6368e270-7893-4701-a19f-25e9b0e63fa1",
   "metadata": {},
   "source": [
    "## 预览读取的数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "f19f0f5e-b626-4c4c-a022-fb4f43d534e6",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>school</th>\n",
       "      <th>sex</th>\n",
       "      <th>age</th>\n",
       "      <th>address</th>\n",
       "      <th>famsize</th>\n",
       "      <th>Pstatus</th>\n",
       "      <th>Medu</th>\n",
       "      <th>Fedu</th>\n",
       "      <th>Mjob</th>\n",
       "      <th>Fjob</th>\n",
       "      <th>...</th>\n",
       "      <th>famrel</th>\n",
       "      <th>freetime</th>\n",
       "      <th>goout</th>\n",
       "      <th>Dalc</th>\n",
       "      <th>Walc</th>\n",
       "      <th>health</th>\n",
       "      <th>absences</th>\n",
       "      <th>G1</th>\n",
       "      <th>G2</th>\n",
       "      <th>G3</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>GP</td>\n",
       "      <td>F</td>\n",
       "      <td>18</td>\n",
       "      <td>U</td>\n",
       "      <td>GT3</td>\n",
       "      <td>A</td>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>at_home</td>\n",
       "      <td>teacher</td>\n",
       "      <td>...</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>6</td>\n",
       "      <td>5</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>GP</td>\n",
       "      <td>F</td>\n",
       "      <td>17</td>\n",
       "      <td>U</td>\n",
       "      <td>GT3</td>\n",
       "      <td>T</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>at_home</td>\n",
       "      <td>other</td>\n",
       "      <td>...</td>\n",
       "      <td>5</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>GP</td>\n",
       "      <td>F</td>\n",
       "      <td>15</td>\n",
       "      <td>U</td>\n",
       "      <td>LE3</td>\n",
       "      <td>T</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>at_home</td>\n",
       "      <td>other</td>\n",
       "      <td>...</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>10</td>\n",
       "      <td>7</td>\n",
       "      <td>8</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>GP</td>\n",
       "      <td>F</td>\n",
       "      <td>15</td>\n",
       "      <td>U</td>\n",
       "      <td>GT3</td>\n",
       "      <td>T</td>\n",
       "      <td>4</td>\n",
       "      <td>2</td>\n",
       "      <td>health</td>\n",
       "      <td>services</td>\n",
       "      <td>...</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>5</td>\n",
       "      <td>2</td>\n",
       "      <td>15</td>\n",
       "      <td>14</td>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>GP</td>\n",
       "      <td>F</td>\n",
       "      <td>16</td>\n",
       "      <td>U</td>\n",
       "      <td>GT3</td>\n",
       "      <td>T</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>other</td>\n",
       "      <td>other</td>\n",
       "      <td>...</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>5</td>\n",
       "      <td>4</td>\n",
       "      <td>6</td>\n",
       "      <td>10</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>390</th>\n",
       "      <td>MS</td>\n",
       "      <td>M</td>\n",
       "      <td>20</td>\n",
       "      <td>U</td>\n",
       "      <td>LE3</td>\n",
       "      <td>A</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>services</td>\n",
       "      <td>services</td>\n",
       "      <td>...</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>4</td>\n",
       "      <td>11</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>391</th>\n",
       "      <td>MS</td>\n",
       "      <td>M</td>\n",
       "      <td>17</td>\n",
       "      <td>U</td>\n",
       "      <td>LE3</td>\n",
       "      <td>T</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>services</td>\n",
       "      <td>services</td>\n",
       "      <td>...</td>\n",
       "      <td>2</td>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>14</td>\n",
       "      <td>16</td>\n",
       "      <td>16</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>392</th>\n",
       "      <td>MS</td>\n",
       "      <td>M</td>\n",
       "      <td>21</td>\n",
       "      <td>R</td>\n",
       "      <td>GT3</td>\n",
       "      <td>T</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>other</td>\n",
       "      <td>other</td>\n",
       "      <td>...</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>10</td>\n",
       "      <td>8</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>393</th>\n",
       "      <td>MS</td>\n",
       "      <td>M</td>\n",
       "      <td>18</td>\n",
       "      <td>R</td>\n",
       "      <td>LE3</td>\n",
       "      <td>T</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>services</td>\n",
       "      <td>other</td>\n",
       "      <td>...</td>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>0</td>\n",
       "      <td>11</td>\n",
       "      <td>12</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>394</th>\n",
       "      <td>MS</td>\n",
       "      <td>M</td>\n",
       "      <td>19</td>\n",
       "      <td>U</td>\n",
       "      <td>LE3</td>\n",
       "      <td>T</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>other</td>\n",
       "      <td>at_home</td>\n",
       "      <td>...</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>8</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>395 rows × 33 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "    school sex  age address famsize Pstatus  Medu  Fedu      Mjob      Fjob  \\\n",
       "0       GP   F   18       U     GT3       A     4     4   at_home   teacher   \n",
       "1       GP   F   17       U     GT3       T     1     1   at_home     other   \n",
       "2       GP   F   15       U     LE3       T     1     1   at_home     other   \n",
       "3       GP   F   15       U     GT3       T     4     2    health  services   \n",
       "4       GP   F   16       U     GT3       T     3     3     other     other   \n",
       "..     ...  ..  ...     ...     ...     ...   ...   ...       ...       ...   \n",
       "390     MS   M   20       U     LE3       A     2     2  services  services   \n",
       "391     MS   M   17       U     LE3       T     3     1  services  services   \n",
       "392     MS   M   21       R     GT3       T     1     1     other     other   \n",
       "393     MS   M   18       R     LE3       T     3     2  services     other   \n",
       "394     MS   M   19       U     LE3       T     1     1     other   at_home   \n",
       "\n",
       "     ... famrel freetime  goout  Dalc  Walc health absences  G1  G2  G3  \n",
       "0    ...      4        3      4     1     1      3        6   5   6   6  \n",
       "1    ...      5        3      3     1     1      3        4   5   5   6  \n",
       "2    ...      4        3      2     2     3      3       10   7   8  10  \n",
       "3    ...      3        2      2     1     1      5        2  15  14  15  \n",
       "4    ...      4        3      2     1     2      5        4   6  10  10  \n",
       "..   ...    ...      ...    ...   ...   ...    ...      ...  ..  ..  ..  \n",
       "390  ...      5        5      4     4     5      4       11   9   9   9  \n",
       "391  ...      2        4      5     3     4      2        3  14  16  16  \n",
       "392  ...      5        5      3     3     3      3        3  10   8   7  \n",
       "393  ...      4        4      1     3     4      5        0  11  12  10  \n",
       "394  ...      3        2      3     3     3      5        5   8   9   9  \n",
       "\n",
       "[395 rows x 33 columns]"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "student"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5d8f3395-61da-4770-9f55-778a58e713e0",
   "metadata": {},
   "source": [
    "# 使用图表分析属性"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "db454cea-9bcd-458a-b385-af4003be5875",
   "metadata": {
    "tags": []
   },
   "source": [
    "进行回归分析时，我们要大概了解每个特征对结果的影响，故我们对各个特征值分别进行分析\n",
    "\n",
    "但我们不使用两次测验的成绩预测最终成绩，显然以前成绩好的以后考试分数高的概率大，我们希望得到\n",
    "更有意义的结果"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "121c0d5c-4b47-4a6f-8932-1f80977302e5",
   "metadata": {},
   "source": [
    "## 对学生的最终得分情况按出现次数进行汇总排序"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "211ceff5-8292-4ef5-affb-98b102c40b38",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, 'final score')"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "grade_counts = student['G3'].value_counts().sort_values().plot.barh(width=0.8)\n",
    "grade_counts.axes.set_title(\"distribution of score\", fontsize=20)\n",
    "grade_counts.set_xlabel(\"number of student\", fontsize=14)\n",
    "grade_counts.set_ylabel(\"final score\", fontsize=14)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "504426fb-8b16-473f-bbeb-1c96e89bbbaf",
   "metadata": {},
   "source": [
    "## 学生成绩分布直方图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "387957a6-b07f-42fe-8992-fbcdaf370496",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAGwCAYAAABPSaTdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAx10lEQVR4nO3de3gU9b3H8U8CuQFJkITcIBvAIAHkIuEWsF4gBfIogqAihyIC1kcbKBBEpMqlKgL2ICjGIIio9VAUKypYQUwhVOVmAAsWIyB1I5Dgokm45dJkzh8c9hgJEHY3bPLj/XqeeR53ZvY730Qm89mZ+e34WJZlCQAAwFC+3m4AAACgJhF2AACA0Qg7AADAaIQdAABgNMIOAAAwGmEHAAAYjbADAACMVt/bDdS0iooKHTlyRMHBwfLx8fF2OwAAoBosy9KJEycUExMjX1/3zs0YH3aOHDmi2NhYb7cBAABckJubq+bNm7tVw/iwExwcLOnsLyskJMTL3QAAgOooKipSbGys8zjuDuPDzrlLVyEhIYQdAADqGE/cgsINygAAwGiEHQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgNMIOAAAwGmEHAAAYjbADAACMRtgBAABGq+/tBgDAHXa7XQ6H46LrhIeHy2azXaGOANQ2hB0AdZbdblebhLYqPnP6ousFBjVQztf7CDzAVYqwA6DOcjgcKj5zWmG3T5ZfWGyV65Qdz9XxtfPlcDgIO8BVirADoM7zC4tVQFS8t9sAUEtxgzIAADAaYQcAABiNsAMAAIxG2AEAAEYj7AAAAKMRdgAAgNEIOwAAwGiEHQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgNMIOAAAwGmEHAAAYjbADAACMRtgBAABGI+wAAACjEXYAAIDRCDsAAMBohB0AAGA0wg4AADAaYQcAABiNsAMAAIxG2AEAAEYj7AAAAKMRdgAAgNEIOwAAwGheDTuzZs2Sj49PpSkhIcG5vLi4WKmpqQoLC1OjRo00dOhQ5efne7FjAABQ13j9zE779u119OhR5/Tpp586l02aNElr1qzRqlWrlJWVpSNHjmjIkCFe7BYAANQ19b3eQP36ioqKOm9+YWGhli1bphUrVqhPnz6SpOXLl6tt27baunWrevbsWWW9kpISlZSUOF8XFRXVTOMAAKBO8PqZnf379ysmJkatWrXSiBEjZLfbJUnZ2dkqKytTcnKyc92EhATZbDZt2bLlgvXmzJmj0NBQ5xQbG1vjPwMAAKi9vBp2evTooddee03r1q1TRkaGDh06pF/96lc6ceKE8vLy5O/vr8aNG1d6T2RkpPLy8i5Yc9q0aSosLHROubm5NfxTAACA2syrl7FSUlKc/92xY0f16NFDcXFxevvttxUUFORSzYCAAAUEBHiqRQAAUMd5/TLWzzVu3FjXXXedDhw4oKioKJWWlqqgoKDSOvn5+VXe4wMAAFCVWhV2Tp48qYMHDyo6OlqJiYny8/NTZmamc3lOTo7sdruSkpK82CUAAKhLvHoZ65FHHtHAgQMVFxenI0eOaObMmapXr56GDx+u0NBQjR07VmlpaWrSpIlCQkI0fvx4JSUlXXAkFgAAwC95Nex8//33Gj58uI4fP66mTZvqxhtv1NatW9W0aVNJ0oIFC+Tr66uhQ4eqpKRE/fv310svveTNlgEAQB3j1bCzcuXKiy4PDAxUenq60tPTr1BHAADANLXqnh0AAABPI+wAAACjEXYAAIDRCDsAAMBohB0AAGA0wg4AADAaYQcAABiNsAMAAIxG2AEAAEYj7AAAAKN59XERAFBb2O12ORyOi64THh4um812hToC4CmEHQBXPbvdrjYJbVV85vRF1wsMaqCcr/cReIA6hrAD4KrncDhUfOa0wm6fLL+w2CrXKTueq+Nr58vhcBB2gDqGsAMA/8cvLFYBUfHebgOAh3GDMgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgNMIOAAAwGmEHAAAYjbADAACMRtgBAABGI+wAAACjEXYAAIDRCDsAAMBohB0AAGA0wg4AADAaYQcAABiNsAMAAIxG2AEAAEYj7AAAAKMRdgAAgNEIOwAAwGiEHQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgNMIOAAAwGmEHAAAYjbADAACMRtgBAABGI+wAAACjEXYAAIDRak3YmTt3rnx8fDRx4kTnvOLiYqWmpiosLEyNGjXS0KFDlZ+f770mAQBAnVMrws6OHTv08ssvq2PHjpXmT5o0SWvWrNGqVauUlZWlI0eOaMiQIV7qEgAA1EVeDzsnT57UiBEjtHTpUl1zzTXO+YWFhVq2bJmee+459enTR4mJiVq+fLk+//xzbd269YL1SkpKVFRUVGkCAABXL6+HndTUVN12221KTk6uND87O1tlZWWV5ickJMhms2nLli0XrDdnzhyFhoY6p9jY2BrrHQAA1H5eDTsrV67Uzp07NWfOnPOW5eXlyd/fX40bN640PzIyUnl5eResOW3aNBUWFjqn3NxcT7cNAADqkPre2nBubq4mTJigDRs2KDAw0GN1AwICFBAQ4LF6AACgbvPamZ3s7GwdO3ZMXbp0Uf369VW/fn1lZWXphRdeUP369RUZGanS0lIVFBRUel9+fr6ioqK80zQAAKhzvHZmp2/fvtqzZ0+leaNHj1ZCQoKmTp2q2NhY+fn5KTMzU0OHDpUk5eTkyG63KykpyRstAwCAOshrYSc4OFjXX399pXkNGzZUWFiYc/7YsWOVlpamJk2aKCQkROPHj1dSUpJ69uzpjZYBAEAd5LWwUx0LFiyQr6+vhg4dqpKSEvXv318vvfSSt9sCAAB1SK0KO5s2bar0OjAwUOnp6UpPT/dOQwAAoM7z+vfsAAAA1CTCDgAAMBphBwAAGI2wAwAAjFarblCua+x2uxwOx0XXCQ8Pl81mu0IdAQCAXyLsuMhut6tNQlsVnzl90fUCgxoo5+t9BB4AALyEsOMih8Oh4jOnFXb7ZPmFVf1k9bLjuTq+dr4cDgdhBwAALyHsuMkvLFYBUfHebgMAAFwANygDAACjEXYAAIDRCDsAAMBohB0AAGA0wg4AADAaYQcAABiNsAMAAIxG2AEAAEYj7AAAAKMRdgAAgNEIOwAAwGiEHQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgNMIOAAAwGmEHAAAYjbADAACMRtgBAABGI+wAAACjEXYAAIDRCDsAAMBo9S/3DZZlKTc3VxEREQoMDKyJngAAhrLb7XI4HBddJzw8XDab7Qp1hKuBS2EnPj5eX331lVq3bl0TPQEADGS329Umoa2Kz5y+6HqBQQ2U8/U+Ag885rLDjq+vr1q3bq3jx48TdgAA1eZwOFR85rTCbp8sv7DYKtcpO56r42vny+FwEHbgMZcddiRp7ty5mjJlijIyMnT99dd7uicAgMH8wmIVEBXv7TZwFXEp7Nx33306ffq0OnXqJH9/fwUFBVVa/uOPP3qkOQAAAHe5FHYWLlzo4TYAAABqhkthZ9SoUZ7uAwAAoEa4FHYk6eDBg1q+fLkOHjyo559/XhEREfroo49ks9nUvn17T/YI4AphWDAAE7kUdrKyspSSkqLevXtr8+bNmj17tiIiIvTll19q2bJleueddzzdJ4AaxrBgAKZyKew89thjevrpp5WWlqbg4GDn/D59+ujFF1/0WHMArhyGBQMwlUthZ8+ePVqxYsV58yMiIi55ChxA7cawYACmcenZWI0bN9bRo0fPm79r1y41a9bM7aYAAAA8xaWwc++992rq1KnKy8uTj4+PKioq9Nlnn+mRRx7Rfffd5+keAQAAXObSZaxnnnlGqampio2NVXl5udq1a6fy8nL913/9l5544glP9wgARvHUqDdGzwHV41LY8ff319KlSzV9+nTt3btXJ0+e1A033MCzsgDgEjw16o3Rc0D1ufw9O5Jks9kUG3t21IaPj49HGgIAk3lq1Buj54DqcznsLFu2TAsWLND+/fslSa1bt9bEiRP1wAMPeKw5ADCVp0a9MXoOuDSXblCeMWOGJkyYoIEDB2rVqlVatWqVBg4cqEmTJmnGjBnVrpORkaGOHTsqJCREISEhSkpK0kcffeRcXlxcrNTUVIWFhalRo0YaOnSo8vPzXWkZAABcpVw6s5ORkaGlS5dq+PDhznl33HGHOnbsqPHjx+vJJ5+sVp3mzZtr7ty5at26tSzL0uuvv65BgwZp165dat++vSZNmqQPP/xQq1atUmhoqMaNG6chQ4bos88+c6VtAABwFXIp7JSVlalr167nzU9MTNR//vOfatcZOHBgpdezZ89WRkaGtm7dqubNm2vZsmVasWKF+vTpI0lavny52rZtq61bt6pnz55V1iwpKVFJSYnzdVFRUbX7AQAA5nHpMtbIkSOVkZFx3vwlS5ZoxIgRLjVSXl6ulStX6tSpU0pKSlJ2drbKysqUnJzsXCchIUE2m01btmy5YJ05c+YoNDTUOZ27gRoAAFydqn1mJy0tzfnfPj4+euWVV/Txxx87z7Bs27ZNdrv9sr9UcM+ePUpKSlJxcbEaNWqk1atXq127dtq9e7f8/f3VuHHjSutHRkYqLy/vgvWmTZtWqdeioiICDwAAV7Fqh51du3ZVep2YmChJOnjwoKSzX1wVHh6ur7766rIaaNOmjXbv3q3CwkK98847GjVqlLKysi6rxs8FBAQoICDA5fcDAACzVDvsbNy4sUYa8Pf3V3z82WGTiYmJ2rFjh55//nkNGzZMpaWlKigoqHR2Jz8/X1FRUTXSCwAAMI9L9+zUpIqKCpWUlCgxMVF+fn7KzMx0LsvJyZHdbldSUpIXOwQAAHWJS6OxiouLtWjRIm3cuFHHjh1TRUVFpeU7d+6sVp1p06YpJSVFNptNJ06c0IoVK7Rp0yatX79eoaGhGjt2rNLS0tSkSROFhIRo/PjxSkpKuuBILAAAgF9yKeyMHTtWH3/8se666y51797d5UdFHDt2TPfdd5+OHj2q0NBQdezYUevXr9evf/1rSdKCBQvk6+uroUOHqqSkRP3799dLL73k0rYAAMDVyaWws3btWv3tb39T79693dr4smXLLro8MDBQ6enpSk9Pd2s7AADg6uXSPTvNmjVTcHCwp3sBAADwOJfCzvz58zV16lR99913nu4HAADAo1y6jNW1a1cVFxerVatWatCggfz8/Cot//HHHz3SHAAAgLtcCjvDhw/X4cOH9cwzzygyMtLlG5QBAABqmkth5/PPP9eWLVvUqVMnT/cDwAB2u10Oh+Oi64SHh8tms12hjgBczVwKOwkJCTpz5oynewFgALvdrjYJbVV85vRF1wsMaqCcr/cReADUOJfCzty5czV58mTNnj1bHTp0OO+enZCQEI80B6DucTgcKj5zWmG3T5ZfWNUP4S07nqvja+fL4XAQdgDUOJfCzoABAyRJffv2rTTfsiz5+PiovLzc/c4A1Gl+YbEKiIr3dhsA4FrYqamHggIAAHiaS2Hn5ptv9nQfAAAANcKlsLN58+aLLr/ppptcagYAUDsxwg51mUth55Zbbjlv3s+/a4d7dgDAHIywQ13nUtj56aefKr0uKyvTrl27NH36dM2ePdsjjQEAagdG2KGucynshIaGnjfv17/+tfz9/ZWWlqbs7Gy3GwMA1C6MsENd5dKDQC8kMjJSOTk5niwJAADgFpfO7Pzzn/+s9NqyLB09elRz585V586dPdEXAACAR7gUdjp37iwfHx9ZllVpfs+ePfXqq696pDEAAABPcCnsHDp0qNJrX19fNW3aVIGBgR5pCgAAwFNcCjtxcXHKzMxUZmamjh07poqKikrLObsDAABqC5fCzh//+Ec9+eST6tq1q6Kjoyt9xw4AAEBt4lLYWbx4sV577TWNHDnS0/0AAAB4lEtDz0tLS9WrVy9P9wIAAOBxLoWdBx54QCtWrPB0LwAAAB7n0mWs4uJiLVmyRJ988ok6duwoPz+/Ssufe+45jzQHAADgLpe/VPDclwfu3bu30jJuVgYAALWJS2Fn48aNnu4DAACgRnj02VgAAAC1DWEHAAAYjbADAACMRtgBAABGI+wAAACjEXYAAIDRCDsAAMBohB0AAGA0wg4AADAaYQcAABiNsAMAAIxG2AEAAEYj7AAAAKMRdgAAgNEIOwAAwGiEHQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgNMIOAAAwmlfDzpw5c9StWzcFBwcrIiJCgwcPVk5OTqV1iouLlZqaqrCwMDVq1EhDhw5Vfn6+lzoGAAB1jVfDTlZWllJTU7V161Zt2LBBZWVl6tevn06dOuVcZ9KkSVqzZo1WrVqlrKwsHTlyREOGDPFi1wAAoC6p782Nr1u3rtLr1157TREREcrOztZNN92kwsJCLVu2TCtWrFCfPn0kScuXL1fbtm21detW9ezZ0xttAwCAOqRW3bNTWFgoSWrSpIkkKTs7W2VlZUpOTnauk5CQIJvNpi1btlRZo6SkREVFRZUmAABw9ao1YaeiokITJ05U7969df3110uS8vLy5O/vr8aNG1daNzIyUnl5eVXWmTNnjkJDQ51TbGxsTbcOAABqsVoTdlJTU7V3716tXLnSrTrTpk1TYWGhc8rNzfVQhwAAoC7y6j0754wbN05r167V5s2b1bx5c+f8qKgolZaWqqCgoNLZnfz8fEVFRVVZKyAgQAEBATXdMgAAqCO8embHsiyNGzdOq1ev1t///ne1bNmy0vLExET5+fkpMzPTOS8nJ0d2u11JSUlXul0AAFAHefXMTmpqqlasWKH3339fwcHBzvtwQkNDFRQUpNDQUI0dO1ZpaWlq0qSJQkJCNH78eCUlJTESCwAAVItXw05GRoYk6ZZbbqk0f/ny5br//vslSQsWLJCvr6+GDh2qkpIS9e/fXy+99NIV7hQAANRVXg07lmVdcp3AwEClp6crPT39CnQEAABMU2tGYwEAANQEwg4AADAaYQcAABiNsAMAAIxG2AEAAEYj7AAAAKMRdgAAgNEIOwAAwGiEHQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgtPrebgAAgJpgt9vlcDguuk54eLhsNtsV6gjeQtgBABjHbrerTUJbFZ85fdH1AoMaKOfrfQQewxF2AADGcTgcKj5zWmG3T5ZfWGyV65Qdz9XxtfPlcDgIO4Yj7AAAjOUXFquAqHhvtwEv4wZlAABgNMIOAAAwGpexgBrCSBAAqB0IO0ANYCQIANQehB2gBjASBABqD8IOUIMYCQIA3scNygAAwGiEHQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgNMIOAAAwGmEHAAAYjbADAACMRtgBAABGI+wAAACj1fd2AwAA4Cy73S6Hw3HRdcLDw2Wz2a5QR2Yg7AAAUAvY7Xa1SWir4jOnL7peYFAD5Xy9j8BzGQg7AADUAg6HQ8VnTivs9snyC4utcp2y47k6vna+HA4HYecyEHYAAKhF/MJiFRAV7+02jMINygAAwGiEHQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARvNq2Nm8ebMGDhyomJgY+fj46L333qu03LIszZgxQ9HR0QoKClJycrL279/vnWYBAECd5NWwc+rUKXXq1Enp6elVLn/22Wf1wgsvaPHixdq2bZsaNmyo/v37q7i4+Ap3CgAA6iqvfqlgSkqKUlJSqlxmWZYWLlyoJ554QoMGDZIkvfHGG4qMjNR7772ne++990q2CgAA6qhae8/OoUOHlJeXp+TkZOe80NBQ9ejRQ1u2bLng+0pKSlRUVFRpAgAAV69aG3by8vIkSZGRkZXmR0ZGOpdVZc6cOQoNDXVOsbFVP18EAABcHWpt2HHVtGnTVFhY6Jxyc3O93RIAAPCiWht2oqKiJEn5+fmV5ufn5zuXVSUgIEAhISGVJgAAcPWqtWGnZcuWioqKUmZmpnNeUVGRtm3bpqSkJC92BgAA6hKvjsY6efKkDhw44Hx96NAh7d69W02aNJHNZtPEiRP19NNPq3Xr1mrZsqWmT5+umJgYDR482HtNAwCAOsWrYeeLL77Qrbfe6nydlpYmSRo1apRee+01Pfroozp16pQefPBBFRQU6MYbb9S6desUGBjorZaBK85ut8vhcFx0nfDwcNlstivUEQDULV4NO7fccossy7rgch8fHz355JN68sknr2BXQO1ht9vVJqGtis+cvuh6gUENlPP1PgIPAFTBq2EHwMU5HA4VnzmtsNsnyy+s6q9RKDueq+Nr58vhcBB2AKAKhB2gDvALi1VAVLy32wCAOqnWjsYCAADwBMIOAAAwGmEHAAAYjbADAACMRtgBAABGI+wAAACjEXYAAIDRCDsAAMBohB0AAGA0vkEZVxUeqgkAVx/CDq4aPFQTAK5OhB1cNXioJgBcnQg7uOrwUE0AuLpwgzIAADAaYQcAABiNy1gAAFwEozjrPsIOAAAXwChOMxB2AAC4AEZxmoGwAwDAJTCKs27jBmUAAGA0wg4AADAal7EAADAMI8gqI+wAAGAQRpCdj7ADAIBBGEF2PsIOAAAGYgTZ/+MGZQAAYDTCDgAAMBphBwAAGI2wAwAAjEbYAQAARiPsAAAAoxF2AACA0Qg7AADAaIQdAABgNMIOAAAwGmEHAAAYjbADAACMRtgBAABGI+wAAACjEXYAAIDRCDsAAMBohB0AAGA0wg4AADAaYQcAABiNsAMAAIxG2AEAAEar7+0GgOqw2+1yOBwXXSc8PFw2m+0KdQQA5jPlby9hB7We3W5Xm4S2Kj5z+qLrBQY1UM7X+2r9TgcAdYFJf3sJO6j1HA6His+cVtjtk+UXFlvlOmXHc3V87Xw5HI5avcMBQF1h0t9ewg7qDL+wWAVExXu7DQC4qpjwt7dO3KCcnp6uFi1aKDAwUD169ND27du93RIAAKgjan3Yeeutt5SWlqaZM2dq586d6tSpk/r3769jx455uzUAAFAH1Pqw89xzz+m3v/2tRo8erXbt2mnx4sVq0KCBXn31VW+3BgAA6oBafc9OaWmpsrOzNW3aNOc8X19fJScna8uWLVW+p6SkRCUlJc7XhYWFkqSioiKP9nby5Mmz28s7oIrS4irXKfvxe0lSdna2c/2q+Pr6qqKi4pLbrM56Jq6Tk5Mjyf3ftafq0DM90zM9Xw09X06dkydPevw4e66eZVnuF7NqscOHD1uSrM8//7zS/ClTpljdu3ev8j0zZ860JDExMTExMTEZMB08eNDtPFGrz+y4Ytq0aUpLS3O+LigoUFxcnOx2u0JDQz22naKiIsXGxio3N1chISEeq1tXa9PzlalNz1emdl3suSZr0/OVqU3PlRUWFspms6lJkyZu16rVYSc8PFz16tVTfn5+pfn5+fmKioqq8j0BAQEKCAg4b35oaKjH/0dIUkhISI3Urau16fnK1KbnK1O7LvZck7Xp+crUpufKfH3dv724Vt+g7O/vr8TERGVmZjrnVVRUKDMzU0lJSV7sDAAA1BW1+syOJKWlpWnUqFHq2rWrunfvroULF+rUqVMaPXq0t1sDAAB1QK0PO8OGDdMPP/ygGTNmKC8vT507d9a6desUGRlZrfcHBARo5syZVV7ackdN1a2rten5ytSm5ytTuy72XJO16fnK1KbnmqvtY1meGNMFAABQO9Xqe3YAAADcRdgBAABGI+wAAACjEXYAAIDRrqqwM3v2bPXq1UsNGjRQ48aN3aqVnp6uFi1aKDAwUD169ND27dvd7m/z5s0aOHCgYmJi5OPjo/fee8/tmpI0Z84cdevWTcHBwYqIiNDgwYOdzzxxV0ZGhjp27Oj8QqmkpCR99NFHHqn9c3PnzpWPj48mTpzodq1Zs2bJx8en0pSQkOB+k5IOHz6s3/zmNwoLC1NQUJA6dOigL774wu26LVq0OK9nHx8fpaamulW3vLxc06dPV8uWLRUUFKRrr71WTz31lGeeRSPpxIkTmjhxouLi4hQUFKRevXppx44dl13nUvuGZVmaMWOGoqOjFRQUpOTkZO3fv9/tuu+++6769eunsLAw+fj4aPfu3R7puaysTFOnTlWHDh3UsGFDxcTE6L777tORI0fc7nnWrFlKSEhQw4YNdc011yg5OVnbtm1zu+dfeuihh+Tj46OFCxe6Xff+++8/79/2gAEDPNbzvn37dMcddyg0NFQNGzZUt27dZLfb3apb1f7o4+OjP/3pT273fPLkSY0bN07NmzdXUFCQ8yHY7tbNz8/X/fffr5iYGDVo0EADBgyo1n4iVe84UlxcrNTUVIWFhalRo0YaOnToeV8K7ErdJUuW6JZbblFISIh8fHxUUFBQrZ5/7qoKO6Wlpbr77rv18MMPu1XnrbfeUlpammbOnKmdO3eqU6dO6t+/v44dO+ZW3VOnTqlTp05KT093q84vZWVlKTU1VVu3btWGDRtUVlamfv366dSpU27Xbt68uebOnavs7Gx98cUX6tOnjwYNGqSvvvrKA52ftWPHDr388svq2LGjx2q2b99eR48edU6ffvqp2zV/+ukn9e7dW35+fvroo4/0r3/9S/Pnz9c111zjdu0dO3ZU6nfDhg2SpLvvvtutuvPmzVNGRoZefPFF7du3T/PmzdOzzz6rRYsWud2zJD3wwAPasGGD/vznP2vPnj3q16+fkpOTdfjw4cuqc6l949lnn9ULL7ygxYsXa9u2bWrYsKH69++v4uKqH15Y3bqnTp3SjTfeqHnz5l1Wv5eqffr0ae3cuVPTp0/Xzp079e677yonJ0d33HGHW3Ul6brrrtOLL76oPXv26NNPP1WLFi3Ur18//fDDD27XPmf16tXaunWrYmJiLlmzunUHDBhQ6d/4X/7yF4/UPnjwoG688UYlJCRo06ZN+uc//6np06crMDDQrbo/7/Xo0aN69dVX5ePjo6FDh7rdc1pamtatW6c333xT+/bt08SJEzVu3Dh98MEHLte1LEuDBw/Wt99+q/fff1+7du1SXFyckpOTq3UsqM5xZNKkSVqzZo1WrVqlrKwsHTlyREOGDHG77unTpzVgwAD94Q9/uGSfF+T207XqoOXLl1uhoaEuv7979+5Wamqq83V5ebkVExNjzZkzxwPdnSXJWr16tcfq/dyxY8csSVZWVlaN1L/mmmusV155xSO1Tpw4YbVu3drasGGDdfPNN1sTJkxwu+bMmTOtTp06uV3nl6ZOnWrdeOONHq9blQkTJljXXnutVVFR4Vad2267zRozZkyleUOGDLFGjBjhVl3LsqzTp09b9erVs9auXVtpfpcuXazHH3/c5bq/3DcqKiqsqKgo609/+pNzXkFBgRUQEGD95S9/cbnuzx06dMiSZO3atcsjPVdl+/btliTru+++82jdwsJCS5L1ySefVLvuxWp///33VrNmzay9e/dacXFx1oIFC9yuO2rUKGvQoEGXVae6tYcNG2b95je/8XjdXxo0aJDVp08fj9Ru37699eSTT1aad7n7zS/r5uTkWJKsvXv3OueVl5dbTZs2tZYuXXrZff/yOFJQUGD5+flZq1atcq6zb98+S5K1ZcsWl+v+3MaNGy1J1k8//XTZ/V5VZ3Y8obS0VNnZ2UpOTnbO8/X1VXJysrZs2eLFzqqvsLBQkjzycLWfKy8v18qVK3Xq1CmPPc4jNTVVt912W6Xftyfs379fMTExatWqlUaMGHHJU9rV8cEHH6hr1666++67FRERoRtuuEFLly71QLeVlZaW6s0339SYMWPk4+PjVq1evXopMzNT33zzjSTpyy+/1KeffqqUlBS3+/zPf/6j8vLy8z5BBwUFeeRM2jmHDh1SXl5epX8joaGh6tGjR53ZJ6Wz+6WPj4/bl9h/rrS0VEuWLFFoaKg6derkdr2KigqNHDlSU6ZMUfv27T3Q4f/btGmTIiIi1KZNGz388MM6fvy42zUrKir04Ycf6rrrrlP//v0VERGhHj16eOwWgXPy8/P14YcfauzYsR6p16tXL33wwQc6fPiwLMvSxo0b9c0336hfv34u1ywpKZGkSvujr6+vAgICXNoff3kcyc7OVllZWaX9MCEhQTab7bL2w5o6PhF2LpPD4VB5efl53+AcGRmpvLw8L3VVfRUVFZo4caJ69+6t66+/3iM19+zZo0aNGikgIEAPPfSQVq9erXbt2rldd+XKldq5c6fmzJnjgS7/X48ePfTaa69p3bp1ysjI0KFDh/SrX/1KJ06ccKvut99+q4yMDLVu3Vrr16/Xww8/rN///vd6/fXXPdT5We+9954KCgp0//33u13rscce07333quEhAT5+fnphhtu0MSJEzVixAi3awcHByspKUlPPfWUjhw5ovLycr355pvasmWLjh496nb9c87td3V1n5TO3uswdepUDR8+3CMPU1y7dq0aNWqkwMBALViwQBs2bFB4eLjbdefNm6f69evr97//vdu1fm7AgAF64403lJmZqXnz5ikrK0spKSkqLy93q+6xY8d08uRJzZ07VwMGDNDHH3+sO++8U0OGDFFWVpaHupdef/11BQcHX/KSTXUtWrRI7dq1U/PmzeXv768BAwYoPT1dN910k8s1zwWPadOm6aefflJpaanmzZun77///rL3x6qOI3l5efL39z8vrF/OflgTx6dzav3jIi7lscceu+T19H379nnsBtS6LjU1VXv37vXoJ+s2bdpo9+7dKiws1DvvvKNRo0YpKyvLrcCTm5urCRMmaMOGDZe8tn65fn7WomPHjurRo4fi4uL09ttvu/XJrKKiQl27dtUzzzwjSbrhhhu0d+9eLV68WKNGjXK773OWLVumlJSUat8vcTFvv/22/ud//kcrVqxQ+/bttXv3bk2cOFExMTEe6fnPf/6zxowZo2bNmqlevXrq0qWLhg8fruzsbLdrm6KsrEz33HOPLMtSRkaGR2reeuut2r17txwOh5YuXap77rlH27ZtU0REhMs1s7Oz9fzzz2vnzp1un1H8pXvvvdf53x06dFDHjh117bXXatOmTerbt6/LdSsqKiRJgwYN0qRJkyRJnTt31ueff67Fixfr5ptvdq/x//Pqq69qxIgRHvtbtWjRIm3dulUffPCB4uLitHnzZqWmpiomJsbls9x+fn569913NXbsWDVp0kT16tVTcnKyUlJSLntAQk0cR2qyrmRA2Jk8efIlP+G2atXKY9sLDw9XvXr1zrvDPD8/X1FRUR7bTk0YN26c1q5dq82bN6t58+Yeq+vv76/4+HhJUmJionbs2KHnn39eL7/8sss1s7OzdezYMXXp0sU5r7y8XJs3b9aLL76okpIS1atXz+3eJalx48a67rrrdODAAbfqREdHnxfw2rZtq7/+9a9u1f257777Tp988oneffddj9SbMmWK8+yOdPZA891332nOnDkeCTvXXnutsrKydOrUKRUVFSk6OlrDhg3z6D55br/Lz89XdHS0c35+fr46d+7sse3UhHNB57vvvtPf//53j5zVkaSGDRsqPj5e8fHx6tmzp1q3bq1ly5Zp2rRpLtf8xz/+oWPHjslmsznnlZeXa/LkyVq4cKH+/e9/e6Dzs1q1aqXw8HAdOHDArbATHh6u+vXrV7lfeuqA+o9//EM5OTl66623PFLvzJkz+sMf/qDVq1frtttuk3T2Q9nu3bv13//9325d0k9MTHR+MC0tLVXTpk3Vo0cPde3atdo1LnQciYqKUmlpqQoKCiqd3anusbGmjk/n1Pmw07RpUzVt2vSKbc/f31+JiYnKzMzU4MGDJZ399JCZmalx48ZdsT4uh2VZGj9+vFavXq1NmzapZcuWNbq9iooK5/VhV/Xt21d79uypNG/06NFKSEjQ1KlTPRZ0pLPDPA8ePKiRI0e6Vad3797nDZn85ptvFBcX51bdn1u+fLkiIiKcfwTddfr0afn6Vr6aXa9ePecnYk9p2LChGjZsqJ9++knr16/Xs88+67HaLVu2VFRUlDIzM53hpqioSNu2bXN75GVNOhd09u/fr40bNyosLKzGtuWJfXLkyJHnHWj79++vkSNHavTo0W7V/qXvv/9ex48frxReXeHv769u3brV6H65bNkyJSYmeuSeKOnsv4uysrIa3S9DQ0Mlnb138YsvvtBTTz11yfdc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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.gca().xaxis.set_major_locator(plt.MultipleLocator(1))\n",
    "plt.hist(student[\"G3\"], bins=50, edgecolor=\"black\")\n",
    "plt.xlabel(\"score\")\n",
    "plt.ylabel(\"number\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4b50b189-fd2c-4429-9047-f16ef3851182",
   "metadata": {},
   "source": [
    "一旦去掉0分，可以认为和正态分布有较高的相似度\n",
    "\n",
    "加上0分的，整张图完全不符合正态分布，且得分为1,2,3的人直接断层，严重怀疑0分不是单纯的考试成绩"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7c9f74bf-5f81-4f38-b985-4c6edb7f6b1e",
   "metadata": {},
   "source": [
    "## 分析年龄的影响"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "04ea8655-6f8f-4295-961e-33cd2351b5c2",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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fVNFRETot7/9raZNm6aEhAS1a9dOmZmZGjNmjCwDv4l9bm6ujh8/buxVq+aw/q9ev9vt1tixY9WrVy/97Gc/a5GZiB0b3HzzzercubM++OAD42Onc+fOCg8PV69evXz233bbbW3yL4I//OEPKi8v169+9Su7R2kxn332mR577DFt375dY8eOlST17dtXR48e1YoVK9pE7EjSgAEDdPToUdXW1urixYvq0qWLhgwZooEDB9o9WkDNnDlTr7/+uvbt26du3bp59ycmJurixYuqqanxubpTVVWlxMREGyYNjqutv61obv2ffvqpsrOzFRsbq+3btysiIqJF5uJtLBt8+OGHOnfunJKSkuweJegiIyM1aNCgL30E8/3331f37t1tmso+mzZt0oABA9SvXz+7R2kxTU1NampqUliY71837dq18175a0vi4+PVpUsXnTx5UocOHdL48ePtHikgLMvSzJkztX37dr399ttKS0vzOT5gwABFRESoqKjIu6+8vFwVFRXKyMho6XEDrrn1m+5a1u92uzV69GhFRkZq586dLXp1mys7AVBXV6cPPvjA+/Xp06d19OhRJSQkKCEhQY8//rhycnKUmJioU6dO6dFHH9Utt9yirKwsG6cOnK9af2pqqubOnasHH3xQI0eO1De/+U0VFhZq165d2rt3r31DB1hzr4H0+b/o27Zt07PPPmvXmEHT3PrvvPNOzZ07VzExMerevbuKi4u1ZcsWrVy50sapA6u512Dbtm3q0qWLUlNTdezYMf34xz/WhAkTjLlJOzc3V1u3btVrr72m2NhY73048fHxiomJUXx8vKZNm6a8vDwlJCQoLi5Os2bNUkZGhoYOHWrz9NevufVLn9+35HK5vH9Ojh07ptjYWKWmprb6G5mbW//l0Llw4YJefvllud1uud1uSVKXLl3Url274A4Y9M97tQGXP0b4xW3KlCnWhQsXrNGjR1tdunSxIiIirO7du1vTp0+3XC6X3WMHzFet/7JNmzZZt9xyixUdHW3169fP2rFjh30DB8G1vAbPPfecFRMTY9XU1Ng3aJA0t/6zZ89aDz/8sJWcnGxFR0dbt956q/Xss89aHo/H3sEDqLnX4D//8z+tbt26WREREVZqaqq1YMECq7Gx0d6hA+hKa5dkbd682fuYzz77zHrkkUesG2+80brhhhus++67zzp79qx9QwfQtax/8eLFzT6mtWpu/Vf790OSdfr06aDP5/j/QwIAABiJe3YAAIDRiB0AAGA0YgcAABiN2AEAAEYjdgAAgNGIHQAAYDRiBwAAGI3YAQAARiN2AACA0YgdAABgNGIHAAAYjdgB0CoVFhZqxIgR6tixozp16qR77rlHp06d8h7fv3+/+vfvr+joaA0cOFA7duyQw+HQ0aNHvY85fvy4xowZow4dOsjpdOqhhx7Sxx9/bMNqAAQTsQOgVaqvr1deXp4OHTqkoqIihYWF6b777pPH45Hb7da4cePUp08fHT58WE888YTmzZvn8/yamhqNGjVKt99+uw4dOqTCwkJVVVXpgQcesGlFAIKFn3oOwAgff/yxunTpomPHjumdd97RggUL9OGHHyo6OlqS9Pzzz2v69Ok6cuSI+vfvr6VLl+oPf/iD3nzzTe85PvzwQ6WkpKi8vFxf//rX7VoKgADjyg6AVunkyZOaNGmSbr75ZsXFxalHjx6SpIqKCpWXl6tv377e0JGkwYMH+zz/3Xff1Z49e9ShQwfvlp6eLkk+b4cBaP3C7R4AAPwxbtw4de/eXRs3blRycrI8Ho969+6tixcvXtPz6+rqNG7cOC1fvvxLx5KSkgI9LgAbETsAWp1z586pvLxcGzdu1L/8y79Ikt555x3v8VtvvVUvv/yyGhsbFRUVJUk6ePCgzznuuOMO/eY3v1GPHj0UHs5fhYDJeBsLQKtz4403qlOnTtqwYYM++OADvf3228rLy/Me/+53vyuPx6MZM2boxIkTevPNN7VixQpJksPhkCTl5ubq/PnzmjRpkg4ePKhTp07pzTff1NSpU3Xp0iVb1gUgOIgdAK1OWFiYXn31VZWVlal3796aM2eOnnnmGe/xuLg47dq1S0ePHlX//v3105/+VIsWLZIk7308ycnJ+uMf/6hLly5p9OjR6tOnj2bPnq2OHTsqLIy/GgGT8GksAG3CK6+8oqlTp6q2tlYxMTF2jwOgBfFGNQAjbdmyRTfffLNuuukmvfvuu5o3b54eeOABQgdog4gdAEZyuVxatGiRXC6XkpKS9J3vfEdPPvmk3WMBsAFvYwEAAKNxFx4AADAasQMAAIxG7AAAAKMROwAAwGjEDgAAMBqxAwAAjEbsAAAAoxE7AADAaP8P09LMKZCcFqsAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.hist(student[\"age\"], bins=20)\n",
    "plt.xlabel(\"age\")\n",
    "plt.ylabel(\"number\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9b0ac730-671f-442a-8238-95ab81530dca",
   "metadata": {},
   "source": [
    "可以得出年龄集中在15～19,但是很难再得到什么有价值的信息"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3ea6ed64-2fba-4ed0-bfd7-3bb1be8bd110",
   "metadata": {
    "tags": []
   },
   "source": [
    "## 尝试将性别和最终成绩一起分析"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "3c21509e-1a7e-476e-9ccd-9a70708ddae0",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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ViovL7e7nCYnICDAa2dozrA11Hz00UcaMWKEhg//+Y6gbdu21SuvvKLdu3dL+vkszeLFizV79myNGDFCkvTSSy8pKipKb775pm699VbbagcAmMHf39/rb66wh60XCvfv319paWn66quvJEmffvqpduzYoWHDhkmSsrKylJOTo6SkJNc+4eHh6tevn9LT06vss7S0VIWFhW4LAAAwn61nambOnKnCwkJ17NhR/v7+qqio0J/+9CeNHTtWkpSTkyNJioqKctsvKirKte3XUlJS9Oijj9Zv4QAAwOfYeqbm1Vdf1X//939r7dq12rdvn9asWaM///nPWrNmjcd9zpo1SwUFBa7l6NGjXqwYAAD4KlvP1Dz00EOaOXOm69qYbt266ciRI0pJSdG4ceNcV0Tn5uYqJibGtV9ubq569uxZZZ9BQUEKCgqq99oBAIBvsfVMTXFxsfz83Evw9/eX0+mUJCUkJCg6OlppaWmu7YWFhcrIyFBiYmKD1goAAHybrWdqrrvuOv3pT39SmzZt1KVLF+3fv1/PPPOM7rzzTkk/f91uypQpWrBggdq3b+/6SndsbKxGjhxpZ+kAAMDH2BpqlixZojlz5ui+++5TXl6eYmNjdc8992ju3LmuNg8//LBOnTqlSZMmKT8/X1deeaU2btzIPWoAAIAbh2X4r3kVFhYqPDxcBQUFCgsLs7scoNFqO3OD3SVU6dtFw+0uAUA98OT9mx+0BAAARiDUAAAAIxBqAACAEQg1AADACIQaAABgBEINAAAwAqEGAAAYgVADAACMQKgBAABGINQAAAAjEGoAAIARCDUAAMAIhBoAAGAEQg0AADACoQYAABiBUAMAAIxAqAEAAEYg1AAAACMQagAAgBEINQAAwAjN7C4AAM7J/HC7K6hsfoHdFQBNEmdqAACAEQg1AADACIQaAABgBEINAAAwAqEGAAAYgVADAACMQKgBAABGINQAAAAjEGoAAIARCDUAAMAIhBoAAGAEQg0AADACoQYAABiBUAMAAIxAqAEAAEYg1AAAACMQagAAgBEINQAAwAiEGgAAYARCDQAAMAKhBgAAGIFQAwAAjECoAQAARiDUAAAAIxBqAACAEQg1AADACIQaAABgBEINAAAwAqEGAAAYgVADAACMQKgBAABGINQAAAAjEGoAAIARCDUAAMAIzewuAADQCM0Pt7uCyuYX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j4ODg7V06VItXbrUnoIAAECjYduFwgAAAN5EqAEAAEYg1AAAACMQagAAgBEINQAAwAiEGgAAYARCDQAAMAKhBgAAGIFQAwAAjECoAQAARiDUAAAAIxBqAACAEQg1AADACIQaAABgBEINAAAwAqEGAAAYgVADAACMQKgBAABGINQAAAAjEGoAAIARCDUAAMAIhBoAAGAEQg0AADACoQYAABiBUAMAAIxAqAEAAEYg1AAAACMQagAAgBEINQAAwAiEGgAAYARCDQAAMAKhBgAAGIFQAwAAjECoAQAARiDUAAAAIxBqAACAEQg1AADACIQaAABgBEINAAAwAqEGAAAYgVADAACMQKgBAABGINQAAAAjEGoAAIARCDUAAMAIhBoAAGAEQg0AADACoQYAABiBUAMAAIxAqAEAAEYg1AAAACMQagAAgBEINQAAwAiEGgAAYARCDQAAMEIzuwsAAAC1ND/c7goqm19gdwUunKkBAABGINQAAAAjEGoAAIARuKbmHLSducHuEqr07aLhdpcAAECD40wNAAAwAqEGAAAYgVADAACMQKgBAABGINQAAAAjEGoAAIARCDUAAMAItt6nJiUlRa+//rr+93//VyEhIerfv7+eeOIJdejQwdWmpKREDz74oNatW6fS0lINGTJEf/vb3xQVFWVj5bAT9wcCAFTF1jM127dvV3Jysnbt2qXNmzervLxcgwcP1qlTp1xtpk6dqrffflvr16/X9u3bdezYMd144402Vg0AAHyRrWdqNm7c6PZ49erVatWqlfbu3aurrrpKBQUFevHFF7V27VoNHDhQkrRq1Sp16tRJu3bt0hVXXGFH2QAAwAf51DU1BQU//3z5hRdeKEnau3evysvLlZSU5GrTsWNHtWnTRunp6VX2UVpaqsLCQrcFAACYz2dCjdPp1JQpUzRgwAB17dpVkpSTk6PAwEBFRES4tY2KilJOTk6V/aSkpCg8PNy1xMXF1XfpAADAB/hMqElOTtaBAwe0bt26c+pn1qxZKigocC1Hjx71UoUAAMCX+cSvdN9///1655139OGHH+qiiy5yrY+OjlZZWZny8/Pdztbk5uYqOjq6yr6CgoIUFBRU3yUDAAAfY+uZGsuydP/99+uNN97QBx98oISEBLftffr0UUBAgNLS0lzrDh06pOzsbCUmJjZ0uQAAwIfZeqYmOTlZa9eu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dCotLc3t/2h/KTEx0a29JG3evLna9r7Csizdf//9euONN/TBBx8oISGhzn1UVFTo888/V0xMTD1UWH+KioqUmZlZbd2NdU7PWLVqlVq1aqXhw4fXab/GOp8JCQmKjo52m7PCwkJlZGRUO2eeHOu+4kyg+frrr7VlyxZFRkbWuY+zHQO+6l//+pd+/PHHautuzPMq/XyGtU+fPurRo0ed9/WFOT3b+0qfPn0UEBDgNj+HDh1SdnZ2tfPjyfFdU4FNzrp166ygoCBr9erV1sGDB61JkyZZERERVk5OjmVZlnX77bdbM2fOdLXfuXOn1axZM+vPf/6z9eWXX1rz5s2zAgICrM8//9yuIdTKvffea4WHh1vbtm2zjh8/7lqKi4tdbX491kcffdTatGmTlZmZae3du9e69dZbreDgYOuLL76wYwi19uCDD1rbtm2zsrKyrJ07d1pJSUlWixYtrLy8PMuyzJlTy/r5mx5t2rSxZsyYUWlbY57PkydPWvv377f2799vSbKeeeYZa//+/a5v/CxatMiKiIiw3nrrLeuzzz6zRowYYSUkJFinT5929TFw4EBryZIlrsdnO9btUtNYy8rKrOuvv9666KKLrE8++cTt2C0tLXX18euxnu0YsEtNYz158qQ1ffp0Kz093crKyrK2bNli9e7d22rfvr1VUlLi6qMxzOvZ/v1almUVFBRYzZs3t1JTU6vsozHMaW3eV37/+99bbdq0sT744APr448/thITE63ExES3fjp06GC9/vrrrse1Ob5ro0mGGsuyrCVLllht2rSxAgMDrcsvv9zatWuXa9vVV19tjRs3zq39q6++al166aVWYGCg1aVLF2vDhg0NXHHdSapyWbVqlavNr8c6ZcoU1+sSFRVl/cd//Ie1b9++hi++jm655RYrJibGCgwMtFq3bm3dcsst1uHDh13bTZlTy7KsTZs2WZKsQ4cOVdrWmOdz69atVf57PTMep9NpzZkzx4qKirKCgoKsQYMGVXoN4uPjrXnz5rmtq+lYt0tNY83Kyqr22N26daurj1+P9WzHgF1qGmtxcbE1ePBgq2XLllZAQIAVHx9v3X333ZXCSWOY17P9+7Usy3r++eetkJAQKz8/v8o+GsOc1uZ95fTp09Z9991nXXDBBVbz5s2tG264wTp+/Hilfn65T22O79pw/L/OAQAAGrUmd00NAAAwE6EGAAAYgVADAACMQKgBAABGINQAAAAjEGoAAIARCDUAAMAIhBoAAGAEQg0AADACoQYAABiBUAPAeGVlZXaXAKABEGoA2Oa1115Tt27dFBISosjISCUlJenUqVOSpJUrV6pLly4KCgpSTEyM7r//ftd+2dnZGjFihM4//3yFhYVp9OjRys3NdW2fP3++evbsqRdeeEEJCQkKDg6WJOXn5+uuu+5Sy5YtFRYWpoEDB+rTTz9t2EEDqDeEGgC2OH78uMaMGaM777xTX375pbZt26Ybb7xRlmUpNTVVycnJmjRpkj7//HP985//1CWXXCJJcjqdGjFihE6cOKHt27dr8+bN+uabb3TLLbe49X/48GH94x//0Ouvv65PPvlEknTzzTcrLy9P7733nvbu3avevXtr0KBBOnHiREMPH0A94Fe6Adhi37596tOnj7799lvFx8e7bWvdurUmTJigBQsWVNpv8+bNGjZsmLKyshQXFydJOnjwoLp06aLdu3frsssu0/z587Vw4UJ99913atmypSRpx44dGj58uPLy8hQUFOTq75JLLtHDDz+sSZMm1eNoATSEZnYXAKBp6tGjhwYNGqRu3bppyJAhGjx4sG666SaVl5fr2LFjGjRoUJX7ffnll4qLi3MFGknq3LmzIiIi9OWXX+qyyy6TJMXHx7sCjSR9+umnKioqUmRkpFt/p0+fVmZmZj2MEEBDI9QAsIW/v782b96sjz76SO+//76WLFmiP/7xj0pLS/NK/+edd57b46KiIsXExGjbtm2V2kZERHjlOQHYi1ADwDYOh0MDBgzQgAEDNHfuXMXHx2vz5s1q27at0tLS9Nvf/rbSPp06ddLRo0d19OhRt4+f8vPz1blz52qfq3fv3srJyVGzZs3Utm3b+hoSABsRagDYIiMjQ2lpaRo8eLBatWqljIwMff/99+rUqZPmz5+v3//+92rVqpWGDRumkydPaufOnZo8ebKSkpLUrVs3jR07VosXL9a///1v3Xfffbr66qvVt2/fap8vKSlJiYmJGjlypJ588kldeumlOnbsmDZs2KAbbrihxn0BNA6EGgC2CAsL04cffqjFixersLBQ8fHxevrppzVs2DBJUklJiZ599llNnz5dLVq00E033STp57M7b731liZPnqyrrrpKfn5+Gjp0qJYsWVLj8zkcDr377rv64x//qAkTJuj7779XdHS0rrrqKkVFRdX7eAHUP779BAAAjMB9agAAgBEINQAAwAiEGgAAYARCDQAAMAKhBgAAGIFQAwAAjECoAQAARiDUAAAAIxBqAACAEQg1AADACIQaAABghP8DSACQJjA/d5kAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "female = student[student[\"sex\"] == \"F\"][\"G3\"]\n",
    "male = student[student[\"sex\"] == \"M\"][\"G3\"]\n",
    "error = np.abs(female - male)\n",
    "labels = [\"female\", \"male\"]\n",
    "plt.hist([female, male], bins=5, label=labels)\n",
    "plt.xlabel(\"score\")\n",
    "plt.ylabel(\"number\")\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1bae55d2-95da-47c4-850d-9554a50aef73",
   "metadata": {},
   "source": [
    "这证实性别和成绩没什么大关系"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ecd03ea9-a75f-4c5c-bae5-f679fc909610",
   "metadata": {},
   "source": [
    "## 将年龄和最终成绩一起分析"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "6b7610bf-af3d-4ae8-9b2c-839b0bb6c6d2",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='age', ylabel='G3'>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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rymwvn37as+ePW3u//vf/66+fft2uigAAIBg8isA/cd//Ifmz5/f6qMozpw5o1/+8pe67bbbAlYcAABAMPg1BfbII4/o9ddf18CBA5Wfn6+rrrpK0rmnxC9evFhnz57VI488EpRCAQAAAsWvAJSSkqKysjLNnTtXDz/8sPf+HZvNpm9/+9t67rnnuNkYAACEPb8CkHTu83lKSkr06aefav/+/ZKkK664wvuQVEtoPhuc8xrGF+eOipGC8QFuwaodAIAI4ncAOq9nz566/vrrA1lLxOi+6xWzSwAAAJ3g103QAAAAXcFFjwBZjcPhkNPpDOo13G63cnNzJUnFxcU+H/gYDME+PwAA4YoA1EE2m03x8fEhu57D4Qjp9TrC02RTy4dMBophSA3N517HRQXn1qdztV+kYN02ZUhq+vfraCkozx3llq8OafmBrGebGk2spHNa1t7eh8x2hmEYrX4USltatvXnOOnc70EeZotgIQChw/K29DC7BFNEvxltdgkIspafYL/+b8+ZWEngeDwedevWLeDndbvdysrKuqhjz49wd5TT6Qy7/wii6+AeIAAAYDmMAKFdVr33yar9tiq73e59fcfwHysmOtbEai7e2aZG7whWyz4Fkr8/G4ZheEfY7Ha7X1NafM8imAhAaJdV732yar+tquUf5ZjoWMVEx5lYTWAE696Zi/nZCMZUHNBZTIEBAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADLIQABAADL4WGoAFrVIEkyAn5eQ1Ljv1/HSgrGIzsbOnHs2ebGCzfSuaecNzWf7cSVOi46KqZDDzftaO2wJsMw5Ha75Xa7O3xMc3OzXC5XEKv6QmJioqKiOj4u43A45HA4LvrBvwQgAK1aZHYBJllf/pzZJQBB4Xa7lZWVZXYZAeV0OhUfH39RxzIFBgAALIcRIABeDodDTqczqNdwu93Kzc2VJBUXF8vhcAT1eh05/8X02zAMeTyeiy3LL3a73e9h/mB/XRF5zn+fd7UpsItFAALgZbPZLno4+WI4HI6QXq8tF9vvbt26BaEaIDjOf5/7+73eq1evIFVkLqbAAACA5YR9ALrssstks9m+suTl5bXafsWKFV9py1AwAABoKeynwP7617+qqanJu75nzx59+9vf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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.boxplot(student, x=\"age\", y=\"G3\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "481bb889-cad3-45d4-bf41-84d403429c4d",
   "metadata": {},
   "source": [
    "可以看出，除了20岁的人（人少的可怜）的分数确实高于其他年龄段的，年龄对成绩的平均数可以说没有什么影响，但是确实有缓慢下降的趋势\n",
    "，毕竟年龄提升后课程难度也会加大。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bdc54b98-9b7d-4135-ab98-9b6be0821d9f",
   "metadata": {},
   "source": [
    "## 居住地对成绩的影响分析"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "bfa40a0f-26c2-491a-9eb8-2601c4c6cd32",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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7B2aQ+nUqVO1753Vq1fbOySHUFRURGJiIrNmzarx9ddff5333nuP2bNns2HDBry9vRk+fDilpaU1nt+cXeqzAhgxYkS177Ovv/66CSN0DCtXruT+++9n/fr1LFmyhIqKCq688kqKioos5zz66KP8/PPPfPfdd6xcuZITJ05w3XXX2TFq+6jLZwUwefLkat9Xr7/+unUDUYRDi4mJUd555x17h+Fwevfurdx///2WfxuNRiUyMlKZMWOGHaNyLNOnT1cSExPtHYbDA5QFCxZY/m0ymZTw8HDljTfesDx39uxZxcPDQ/n666/tEKHj+PtnpSiKMnHiROWaa66xSzyOLCcnRwGUlStXKoqifg+5u7sr3333neWcvXv3KoCybt06e4XpEP7+WSmKogwePFh5+OGHbXpf6QFyAq+++ipBQUF069aNN954g8rKSnuHZFfl5eVs2bKFYcOGWZ7TarUMGzaMdevW2TEyx3PgwAEiIyOJi4vj1ltvJSMjw94hObxDhw6RlZVV7fvL39+fPn36yPdXLVasWEFoaCjt27fnvvvu4/Tp0/YOye7y8vIACAwMBGDLli1UVFRU+75KSEigVatWLv999ffPyuyrr74iODiYzp07M23aNIqLi616X7uvBC0u7qGHHqJ79+4EBgaydu1apk2bRmZmJm+//ba9Q7ObU6dOYTQaLauFm4WFhbFv3z47ReV4+vTpw2effUb79u3JzMzkhRdeYODAgezatQtfX197h+ewsrKyAGr8/jK/Js4ZMWIE1113Ha1btyY9PZ2nnnqKkSNHsm7dOnQ6nb3DswuTycQjjzxC//79LbsUZGVlodfrL9ho29W/r2r6rABuueUWYmJiiIyMZMeOHTzxxBOkpqYyf/58q91bEiA7ePLJJ3nttdcues7evXtJSEhgypQplue6du2KXq/nnnvuYcaMGbKsuriokSNHWo67du1Knz59iImJ4dtvv+Wuu+6yY2SiObn55pstx126dKFr1660adOGFStWMHToUDtGZj/3338/u3btkpq7Oqjts7r77rstx126dCEiIoKhQ4eSnp5OmzZtrHJvSYDs4J///Cd33HHHRc+Ji4ur8fk+ffpQWVnJ4cOHad++vQ2ic3zBwcHodLoLZk9kZ2cTHh5up6gcX0BAAO3atSMtLc3eoTg08/dQdnY2ERERluezs7NJSkqy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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x1 = student.loc[student[\"address\"] == \"U\", \"G3\"] #城市\n",
    "x2 = student.loc[student[\"address\"] == \"R\", \"G3\"] #农村\n",
    "sns.kdeplot(x1)\n",
    "sns.kdeplot(x2)\n",
    "plt.legend([\"urban\", \"rural\"])\n",
    "plt.xlabel(\"final score\")\n",
    "plt.ylabel(\"rate\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "41b03d73-63ba-4a23-aa53-a9f41c6677a7",
   "metadata": {},
   "source": [
    "看的出来，几乎没有影响"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d548e772-1216-4310-b39a-9a44cfc368df",
   "metadata": {},
   "source": [
    "# 相关度的计算"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "523dd8d7-dcc2-4a0a-9881-aaf222e2fa67",
   "metadata": {},
   "source": [
    "## 使用欧几里德距离计算相关性"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bef5d288-eace-4fcc-9dd1-fd75cd3f5ff7",
   "metadata": {
    "tags": []
   },
   "source": [
    "我已经逐个分析了性别和年龄的影响，接下来我将对相关型进行计算\n",
    "\n",
    "其实导入的包里面就有这个函数，但是为了更好的理解原理，我决定手写一下"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "49e336ce-4024-42f4-b87d-24d629fe4fc5",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[12 11 10 14  9  7  3  5  6 13  2  4  0  1  8]\n"
     ]
    }
   ],
   "source": [
    "def EuclideanDistance(feature1, feature2):\n",
    "    #特征缩放\n",
    "    feature1 = feature1.astype(np.float32)\n",
    "    feature2 = feature2.astype(np.float32)\n",
    "    feature1_mean = np.mean(feature1)\n",
    "    feature2_mean = np.mean(feature2)\n",
    "    feature1 -= feature1_mean\n",
    "    feature2 -= feature2_mean\n",
    "\n",
    "    #计算平方和\n",
    "    square = (feature1 - feature2) ** 2\n",
    "    sum_square = np.sum(square)\n",
    "\n",
    "    #计算相关性\n",
    "    result = 1/(1+np.sqrt(sum_square)) *10\n",
    "\n",
    "    return result\n",
    "\n",
    "number = list()\n",
    "\n",
    "number.append(EuclideanDistance(student[\"failures\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"age\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"goout\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"traveltime\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"health\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"Dalc\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"Walc\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"freetime\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"absences\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"famrel\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"studytime\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"Fedu\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"Medu\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"goout\"], student[\"G3\"]))\n",
    "number.append(EuclideanDistance(student[\"famrel\"], student[\"G3\"]))\n",
    "print(np.argsort(number)[::-1])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e61fdaee-b2c7-452a-b8b1-5bd39652f91c",
   "metadata": {
    "tags": []
   },
   "source": [
    "除了不是用数值表示的特征，我都用欧几里德距离进行了计算，排序得出Medu,Fedu,studytime,famrel对最终成绩影响最大,"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d442de48-ea2f-4989-9aa5-19b6d96f0f27",
   "metadata": {},
   "source": [
    "## 皮尔逊相关度"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "f7c8b56b-5ca8-4dff-8a50-0f7bb8581122",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "G3            1.000000\n",
       "G2            0.904868\n",
       "G1            0.801468\n",
       "Medu          0.217147\n",
       "Fedu          0.152457\n",
       "studytime     0.097820\n",
       "famrel        0.051363\n",
       "absences      0.034247\n",
       "freetime      0.011307\n",
       "Walc         -0.051939\n",
       "Dalc         -0.054660\n",
       "health       -0.061335\n",
       "traveltime   -0.117142\n",
       "goout        -0.132791\n",
       "age          -0.161579\n",
       "failures     -0.360415\n",
       "Name: G3, dtype: float64"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "student.corr(method=\"pearson\", numeric_only=True)[\"G3\"].sort_values()[::-1]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "07bedd70-7f76-4a69-908a-c4d3c9323e99",
   "metadata": {
    "tags": []
   },
   "source": [
    "可以看出皮尔逊相关度和我上面写的欧几里德距离评价得到的结果差不多，都是Medu,Fedu,studytime,famrel相关度最大\n",
    "（G2,G1)不作考虑"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "9e1d88d8-b66c-42a9-9ce8-f52fd6ba7bd5",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='Medu', ylabel='G3'>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.boxplot(student, x=\"Medu\", y=\"G3\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "d9fcff4d-3791-4cd3-a9a2-93e47312fd13",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='Medu', ylabel='G3'>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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pEmTVF5ero8//tjqqblOd3e3Jk2apNWrV1s9Fdfbvn27KioqtHv3br3++us6deqUZs6cqe7ubqun5jpjxozRihUr1NDQoD179ugLX/iCbrvtNjU1NVk9NVd799139dxzz+maa66xeipJwdfgU1BJSYmmTJmiVatWSTpzbbO8vDw9+OCDWrJkicWzcy/DMLRp0ybNmTPH6qlA0tGjR5Wdna3t27fr85//vNXTcb2RI0fq6aef1n333Wf1VFypq6tL1113nbxer5544glNnjxZK1eutHpapuIMUIo5efKkGhoaNGPGjGDbkCFDNGPGDO3atcvCmQH20t7eLunMGy+sc/r0aW3YsEHd3d2aNm2a1dNxrYqKCs2ePTvkvSPVcTHUFHPs2DGdPn1aHo8npN3j8ai5udmiWQH20tvbq4ceekif/exnddVVV1k9HVd6//33NW3aNJ04cULp6enatGmTrrzySqun5UobNmzQ3r179e6771o9laSiAALgOhUVFfrggw/09ttvWz0V15owYYIaGxvV3t6uX/ziF5o/f762b99OEZRkhw8f1r/927/p9ddf17Bhw6yeTlJRAKWYiy++WEOHDpXf7w9p9/v9ysnJsWhWgH0sWrRIW7du1Y4dOzRmzBirp+NaF1xwgQoKCiRJxcXFevfdd/XjH/9Yzz33nMUzc5eGhgZ9/PHHuu6664Jtp0+f1o4dO7Rq1Sr19PRo6NChFs7QPKwBSjEXXHCBiouL9eabbwbbent79eabb/L5OlwtEAho0aJF2rRpk9566y2NGzfO6inhHL29verp6bF6Gq5z00036f3331djY2Pw7zOf+YzuvvtuNTY2pmzxI3EGKCVVVlZq/vz5+sxnPqOpU6dq5cqV6u7u1te+9jWrp+Y6XV1dam1tDd4+cOCAGhsbNXLkSI0dO9bCmblPRUWF1q9fry1btigjI0M+n0+SlJWVpeHDh1s8O3dZunSpZs2apbFjx6qzs1Pr169XfX29amtrrZ6a62RkZPRZB/fpT39aF110Ucqvj6MASkF33XWXjh49qmXLlsnn82ny5Mnatm1bn4XRMN+ePXtUVlYWvF1ZWSlJmj9/vmpqaiyalTutWbNGklRaWhrSvnbtWi1YsCD5E3Kxjz/+WPfcc48++ugjZWVl6ZprrlFtba1uvvlmq6cGF+F3gAAAgOuwBggAALgOBRAAAHAdCiAAAOA6FEAAAMB1KIAAAIDrUAABAADXoQACAACuQwEEAABchwIIAP6hvr5ehmHo+PHjVk8FgMkogAA4xoIFC2QYhr75zW/26auoqJBhGFzWAsCAUAABcJS8vDxt2LBBf/vb34JtJ06c0Pr167nALIABowAC4CjXXXed8vLy9NJLLwXbXnrpJY0dO1bXXnttsK23t1dVVVUaN26chg8frkmTJukXv/hFyFivvvqqioqKNHz4cJWVlemPf/xjSP9jjz2myZMnh7StXLlSl1122WA/LQBJRgEEwHHuvfderV27Nnj7+eef19e+9rWQ+1RVVelnP/uZqqur1dTUpIcffljz5s3T9u3bJUmHDx/WHXfcoVtvvVWNjY26//77tWTJkqQ+DwDWOc/qCQBArObNm6elS5fq4MGDkqRf//rX2rBhg+rr6yVJPT09evLJJ/XGG29o2rRpkqTx48fr7bff1nPPPacbb7xRa9asUX5+vn70ox9JkiZMmKD3339f//7v/27JcwKQXBRAABxn1KhRmj17tmpqahQIBDR79mxdfPHFwf7W1lb99a9/1c033xyy3cmTJ4Mfk/3+979XSUlJSP/ZYglA6qMAAuBI9957rxYtWiRJWr16dUhfV1eXJOmVV17RJZdcEtKXlpY24McYMmSIAoFASNupU6fimS4Am6EAAuBIt9xyi06ePCnDMFReXh7Sd+WVVyotLU2HDh3SjTfeGHb7K664Qr/85S9D2nbv3h1ye9SoUfL5fAoEAjIMQ5LU2Ng4eE8CgGUogAA40tChQ/X73/8++O9zZWRkaPHixXr44YfV29ur6dOnq729Xb/+9a+VmZmp+fPn65vf/KZ+9KMf6Tvf+Y7uv/9+NTQ0qKamJmSc0tJSHT16VE899ZS+/OUva9u2bfrVr36lzMzMZD1NACbhW2AAHCszM7PfYuTxxx/Xo48+qqqqKl1xxRW65ZZb9Morr2jcuHGSpLFjx+p///d/tXnzZk2aNEnV1dV68sknQ8a44oor5PV6tXr1ak2aNEnvvPOOFi9ebPrzAmA+I/DJD7gBAABSHGeAAACA61AAAQAA16EAAgAArkMBBAAAXIcCCAAAuA4FEAAAcB0KIAAA4DoUQAAAwHUogAAAgOtQAAEAANehAAIAAK7z/wFjgX0SM3N2QgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = student[\"Medu\"][0:300]\n",
    "y = student[\"G3\"][0:300]\n",
    "sns.swarmplot(x=x, y=y)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c95aa9fa-8f3f-4c43-a07b-79099fa85903",
   "metadata": {
    "tags": []
   },
   "source": [
    "从上面两张箱线图可以看出，派出Medu=0的极少数情况，随着Medu的增加，学生的得分区间也在逐渐上升，猜想正确\n",
    "\n",
    "但是我们还需要处理非数值数据"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9770008c-7b07-49fe-a01c-3551ccba252b",
   "metadata": {},
   "source": [
    "## 独热编码"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "36326e68-2e57-4c50-a956-24338d53e563",
   "metadata": {
    "tags": []
   },
   "source": [
    "要处理非数值的数据，独热编码是一个不错的方法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "21a55203-405b-4387-b769-fb18e22cbae0",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "G3            1.000000\n",
       "failures      0.360415\n",
       "Medu          0.217147\n",
       "higher_yes    0.182465\n",
       "higher_no     0.182465\n",
       "age           0.161579\n",
       "Fedu          0.152457\n",
       "goout         0.132791\n",
       "Name: G3, dtype: float64"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "student = pd.read_csv(\"student-mat.csv\")\n",
    "features = student[\"G3\"]\n",
    "student = student.drop([\"G1\", \"G2\"], axis=\"columns\")\n",
    "student = pd.get_dummies(student)\n",
    "most_correlated = student.corr()[\"G3\"].abs().sort_values(ascending=False)[:8]\n",
    "most_correlated"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f77dc138-99de-45e8-891d-0cdafa124d80",
   "metadata": {},
   "source": [
    "在使用独热编码后，计算其相关度，并取出相关度最大的8个,除去G3本身，分别为failures,Medu,higher_yes,higher_no,age,Fedu,goout\n",
    "\n",
    "现在进行验证"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8920f506-1481-4de8-a002-1fbecd4e0c58",
   "metadata": {},
   "source": [
    "## 失败次数对最终成绩的影响"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "46981e8b-c92f-44e0-8d55-1e15da723c01",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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bt26wtbWVvTq1UscPny4wnV/1O/Bk0YS4hHOyCQiIiKqxXgOEBERESkOAxAREREpDgMQERERKQ4DEBERESkOAxAREREpDgMQERERKQ5vhFgBrVaLa9euwd7e/rFv505ERESmIYTAnTt34Onp+dCbuDIAVeDatWsPfXYKERERmacrV66gUaNGVY7DAFQBe3t7APc24MOeoUJERETmITc3F40bN9b9Ha8KA1AFyg57OTg4MAARERHVMtU5fYUnQRMREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMACRnpKSErlLICIiMjoGINJJTk7GoEGDkJycLHcpRERERsUARADu9fwsXLgQ+fn5WLRoEXuCiIjoiSZrAIqJicFzzz0He3t7uLm5ITg4GOfOndMbR6PRICIiAvXr10fdunUxfPhwZGZmVjlfIQRmzJiBBg0awMbGBn379sX58+eNuSq13pYtW3DlyhUAQHp6OrZu3SpzRURERMYjawA6cOAAIiIicPToUSQkJKC4uBj9+/dHfn6+bpx33nkHO3fuxHfffYcDBw7g2rVrGDZsWJXzXbBgAT755BOsWrUKx44dg52dHQIDA6HRaIy9SrVSVlYW1qxZo9e2Zs0aZGVlyVQRERGRcUlCCCF3EWVu3rwJNzc3HDhwAN27d0dOTg5cXV2xceNGvPTSSwCAs2fPom3btjhy5Ai6dOlSbh5CCHh6emLy5MmYMmUKACAnJwfu7u6Ii4vDK6+88tA6cnNz4ejoiJycHEU8DHXWrFnYv38/tFqtrs3CwgK9evXCzJkzZayMiIio+mry99uszgHKyckBADg7OwMATp48ieLiYvTt21c3Tps2bdCkSRMcOXKkwnmkpqYiIyNDbxpHR0d07ty50mkKCwuRm5ur91KKpKQk7N27Vy/8AIBWq0ViYiJOnTolU2VERETGYzYBSKvVYtKkSXj++efxzDPPAAAyMjJgbW0NJycnvXHd3d2RkZFR4XzK2t3d3as9TUxMDBwdHXWvxo0bP+ba1B579uyBJEkVDpMkCfHx8SauiIiIyPjMJgBFRETg9OnT2LRpk8mXHR0djZycHN2r7GRgJRgwYAAqOwoqhEBQUJCJKyIiIjI+swhAkZGR2LVrF/bt24dGjRrp2j08PFBUVITs7Gy98TMzM+Hh4VHh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Y+zYseWGpaenw8Lifznu9u3bGD9+PDIyMlCvXj34+fnh8OHDaNeunSlLJiIiIjNWKwJQ//79IYSocNj+/fv13i9duhRLly41QVWkdIWlEoCKP5dkGvf2AZFhCSFQCqBE7kIUrhQCAsa7mXGtCEBE5ijioJPcJRCRERQUFGA/AEswYMupFAIFAOzs7Iwy/1pxDhCRuVCr1fD29pa7DHqAt7d3jR7IS0TEHiCiGpAkCbGxsUZ9uK5Go8GQIUMAAFvWxUKtrp23aNBoCjE8NBIAsGPHDqMGFLVazWf+kcHY2tqiJ4A67AGSVTEEfjXi/BmAiGpIkiTY2NiYZFlqtQo2T0DPhlqtNtk2I3pckiTBEoAVA5CstIBR9wAPgREREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeKYdQCaNWsWJEnSe7Vp06bKab777ju0adMGarUa3t7e+OGHH0xULREREdUWZh2AAODpp5/G9evXda9ffvml0nEPHz6MUaNGYdy4cTh16hSCg4MRHByM06dPm7BiIiIiMndWchfwMFZWVvDw8KjWuMuXL8eAAQMwdepUAMCcOXOQkJCA2NhYrFq1yphlmrXS4qJaMU8iIiJTMfsAdP78eXh6ekKtVsPf3x8xMTFo0qRJheMeOXIEUVFRem2BgYHYvn17lcsoLCxEYWGh7n1ubu5j121Oflo1W+4SiIiIzIpZHwLr3Lkz4uLiEB8fj5UrVyI1NRXdunXDnTt3Khw/IyMD7u7uem3u7u7IyMiocjkxMTFwdHTUvRo3bmywdZBL2TlQxubt7Q21Wm305RARERmSWfcABQUF6X5u3749OnfujKZNm+Lbb7/FuHHjDLac6OhovZ6j3NzcWh+CJElCbGwsNBqNXrtGo8GQIUMAABPmfII61qoq51NcVIhPp08EAOzYsaNc2FGr1ZAkyYCVExERGZ9ZB6AHOTk54amnnsKFCxcqHO7h4YHMzEy9tszMzIeeQ6RSqaBSVR0EaiNJkmBjY1Pp8DrWKljXYL3VanWV8yMiIqotzPoQ2IPy8vJw8eJFNGjQoMLh/v7+SExM1GtLSEiAv7+/KcojIiKiWsKsA9CUKVNw4MABpKWl4fDhwxg6dCgsLS0xatQoAMDo0aMRHR2tG//tt99GfHw8Fi9ejLNnz2LWrFk4ceIEIiMj5VoFIiIiMkNmfQjszz//xKhRo3Dr1i24uroiICAAR48ehaurKwAgPT0dFhb/y3Bdu3bFxo0b8cEHH+D9999Hq1atsH37djzzzDNyrQIRERGZIbMOQJs2bapy+P79+8u1jRgxAiNGjDBSRURERPQkMOtDYERERETGwABEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKwwBEREREisMARERERIrDAERERESKY9YBKCYmBs899xzs7e3h5uaG4OBgnDt3rspp4uLiIEmS3kutVpuoYiIiIqoNzDoAHThwABERETh69CgSEhJQXFyM/v37Iz8/v8rpHBwccP36dd3r8uXLJqqYiIiIagMruQuoSnx8vN77uLg4uLm54eTJk+jevXul00mSBA8PD2OXR0RERLWUWfcAPSgnJwcA4OzsXOV4eXl5aNq0KRo3bowhQ4bgzJkzVY5fWFiI3NxcvRcRERE9uWpNANJqtZg0aRKef/55PPPMM5WO17p1a6xduxY7duzAhg0boNVq0bVrV/z555+VThMTEwNHR0fdq3HjxsZYBSIiIjITtSYARURE4PTp09i0aVOV4/n7+2P06NHw8fFBjx49sHXrVri6uuLzzz+vdJro6Gjk5OToXleuXDF0+URERGRGzPocoDKRkZHYtWsXDh48iEaNGtVo2jp16sDX1xcXLlyodByVSgWVSvW4ZRIREVEtYdY9QEIIREZGYtu2bdi7dy+8vLxqPI/S0lKkpKSgQYMGRqiQiIiIaiOz7gGKiIjAxo0bsWPHDtjb2yMjIwMA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OztMmjQJRUVF1Zq+JtvYzs5O93NeXh4AYPfu3WjYsKHeeCqVCgAQFBSEy5cv44cffkBCQgL69OmDiIgILFq0qPorSPQEYwAiogq5uroCAK5fv67rVajs/jiP4tixY3rvjx49ilatWsHS0hK+vr4oLS3FjRs30K1bt8daTtu2bbFlyxYIIXRh6ddff4W9vT0aNWr0WPP+9ddfMWTIELz++usAAK1Wiz/++APt2rWr1vSPuo3vP+m7R48eVc4/JCQEISEh6NatG6ZOncoARPT/GICIqEI2Njbo0qULPvroI3h5eeHGjRv44IMPDDb/9PR0REVF4W9/+xuSkpLw6aefYvHixQCAp556Cq+99hpGjx6NxYsXw9fXFzdv3kRiYiLat2+PgQMHVns5b731FpYtW4YJEyYgMjIS586dw8yZMxEVFfVIl8zfr1WrVti8eTMOHz6MevXqYcmSJcjMzKx2AHrUbWxvb48pU6bgnXfegVarRUBAAHJycvDrr7/CwcEBISEhmDFjBvz8/PD000+jsLAQu3btQtu2bR9rfYmeJAxARFSptWvXYty4cfDz80Pr1q2xYMEC9O/f3yDzHj16NO7evYtOnTrB0tISb7/9NsLDw3XD161bh7lz52Ly5Mm4evUqXFxc0KVLF7z44os1Wk7Dhg3xww8/YOrUqejQoQOcnZ0xbtw4g4S5Dz74AJcuXUJgYCBsbW0RHh6O4OBg5OTkVHsej7qN58yZA1dXV8TExODSpUtwcnLCs88+i/fffx/AvfOjoqOjkZaWBhsbG3Tr1g2bNm165HUletJI4v6Dz0REREQKwBshEhERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4jAAERERkeIwABEREZHiMAARERGR4vwfDhY0TLgoHrQAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "failures_boxenplot = sns.boxenplot(student, x=\"failures\", y=\"G3\")\n",
    "plt.xlabel(\"number of failures\")\n",
    "plt.ylabel(\"final score\")\n",
    "plt.title(\"How the number of failures affects the final score\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "37f93e03-4ee0-42c8-a7ab-6708c6824474",
   "metadata": {
    "tags": []
   },
   "source": [
    "由此可见，分数随着失败次数的增加而减少"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bae10715-6aad-471f-b2bb-7767dc130806",
   "metadata": {
    "tags": []
   },
   "source": [
    "## 双亲受教育程度对最终成绩的影响"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "d81a3eca-2c81-4319-93de-7b741fd27fd0",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: ylabel='G3'>"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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UYFvv/3Wvv6QIUOwbt06vPnmmxg4cCA2bdqEbdu24c4771SrC0REN1z6KCwsVCeIwnJycuzFgF6vx8KFC1VOpIx169Y5PH/vvfdUSqIsb3qda74AAoDMzEycO3cOFosFX375JQYPHmxftmfPnht+wampqThx4gQsFgvKysrwq1/9SuHERESOunXrhvvvvx8A8MADD6Bbt27qBlKI0WjEzJkzAQCzZs3yqW/4tSYiIsI+4PmWW25pdRyqL/Gm17kky7Ksdgitqa2tRUhICGpqatC1a1e14xCRD7l8+TKCg4PVjqE4i8Ui5JdNvv/+e/To0UPtGIpT63Xuyue3V5wBIiLyFSIWPwCELH4ACFn8AN7xOmcBRERERMJhAURERETCYQFEREREwmEBRERERMJhAURERETCYQFEREREwmEBRERERMLR9Gzwamm+N2Rtba3KSYiIiKi9mj+323OPZxZATly+fBkAEBUVpXISIiIictXly5cREhLS6jqcCsMJm82GCxcuIDg4GJIkKfqza2trERUVhfPnzws1DQf7zX6LgP1mv0WgZr9lWcbly5cRGRkJna71UT48A+SETqdD7969Vc3QtWtXof5gmrHfYmG/xcJ+i0Wtfrd15qcZB0ETERGRcFgAERERkXBYAGmMwWBATk6OcDMns9/stwjYb/ZbBN7Sbw6CJiIiIuHwDBAREREJhwUQERERCYcFEBEREQmHBRAREREJhwWQRuzbtw8pKSmIjIyEJEnYtm2b2pEUkZubi3vuuQfBwcEICwvD+PHjceLECbVjeVx+fj7uuusu+43CEhIS8PHHH6sdS1HPP/88JEnC7Nmz1Y7icYsWLYIkSQ6P/v37qx1LEf/+97/xm9/8Bj169EBgYCBiY2Nx5MgRtWN51M0333zD8ZYkCRkZGWpH86impib8+c9/Rt++fREYGIhbb70Vzz77bLvm5VID7wStEfX19Rg4cCBmzJiBiRMnqh1HMXv37kVGRgbuueceWK1WzJ8/Hw8//DD+7//+D0FBQWrH85jevXvj+eefx2233QZZlrF27VqMGzcOx44dw4ABA9SO53FfffUV3njjDdx1111qR1HMgAED8Omnn9qf6/W+//b7ww8/YOjQoXjooYfw8ccfo2fPnjh58iRuuukmtaN51FdffYWmpib787KyMowePRqpqakqpvK8F154Afn5+Vi7di0GDBiAI0eOYPr06QgJCcFTTz2ldrwb+P5foJdITk5GcnKy2jEUV1xc7PC8sLAQYWFhOHr0KB544AGVUnleSkqKw/OlS5ciPz8fhw4d8vkCqK6uDo8//jjeeustPPfcc2rHUYxer0dERITaMRT1wgsvICoqCmvWrLG39e3bV8VEyujZs6fD8+effx633norHnzwQZUSKePAgQMYN24cxowZA+DqmbC//e1vOHz4sMrJnOMlMNKUmpoaAED37t1VTqKcpqYmrF+/HvX19UhISFA7jsdlZGRgzJgxGDVqlNpRFHXy5ElERkbilltuweOPP46Kigq1I3nc+++/j1/+8pdITU1FWFgY4uPj8dZbb6kdS1ENDQ149913MWPGDMUn11bakCFDUFJSgvLycgDA//7v/2L//v2a/eeeZ4BIM2w2G2bPno2hQ4fizjvvVDuOxx0/fhwJCQkwm8342c9+hq1bt+KOO+5QO5ZHrV+/HqWlpfjqq6/UjqKowYMHo7CwEP369cO3336LxYsX4/7770dZWRmCg4PVjucx//rXv5Cfn4+srCzMnz8fX331FZ566ikEBARg6tSpasdTxLZt23Dp0iVMmzZN7SgeN2/ePNTW1qJ///7w8/NDU1MTli5discff1ztaE6xACLNyMjIQFlZGfbv3692FEX069cPJpMJNTU12LRpE6ZOnYq9e/f6bBF0/vx5PP3009i1axeMRqPacRR17X/Ad911FwYPHow+ffqgqKgITzzxhIrJPMtms+GXv/wlli1bBgCIj49HWVkZVq9eLUwB9Ne//hXJycmIjIxUO4rHFRUV4b333sO6deswYMAAmEwmzJ49G5GRkZo83iyASBMyMzPxwQcfYN++fejdu7facRQREBCAX/ziFwCAQYMG4auvvsKrr76KN954Q+VknnH06FFcvHgRd999t72tqakJ+/btQ15eHiwWC/z8/FRMqJxu3bohJiYGp06dUjuKR/Xq1euGgv7222/H5s2bVUqkrHPnzuHTTz/Fli1b1I6iiLlz52LevHl47LHHAACxsbE4d+4ccnNzWQARXU+WZfz3f/83tm7dij179ggxQLIlNpsNFotF7RgeM3LkSBw/ftyhbfr06ejfvz+eeeYZYYof4OpA8NOnT+O3v/2t2lE8aujQoTfc1qK8vBx9+vRRKZGy1qxZg7CwMPugYF935coV6HSOQ4v9/Pxgs9lUStQ6FkAaUVdX5/Df4JkzZ2AymdC9e3dER0ermMyzMjIysG7dOmzfvh3BwcGorKwEAISEhCAwMFDldJ6TnZ2N5ORkREdH4/Lly1i3bh327NmDnTt3qh3NY4KDg28Y2xUUFIQePXr4/JivOXPmICUlBX369MGFCxeQk5MDPz8/TJ48We1oHvWHP/wBQ4YMwbJly5CWlobDhw/jzTffxJtvvql2NI+z2WxYs2YNpk6dKsQtD4Cr325dunQpoqOjMWDAABw7dgwvvfQSZsyYoXY052TShM8++0wGcMNj6tSpakfzKGd9BiCvWbNG7WgeNWPGDLlPnz5yQECA3LNnT3nkyJHyJ598onYsxT344IPy008/rXYMj3v00UflXr16yQEBAfLPf/5z+dFHH5VPnTqldixF7NixQ77zzjtlg8Eg9+/fX37zzTfVjqSInTt3ygDkEydOqB1FMbW1tfLTTz8tR0dHy0ajUb7lllvkBQsWyBaLRe1oTkmyrNFbNBIRERF5CO8DRERERMJhAURERETCYQFEREREwmEBRERERMJhAURERETCYQFEREREwmEBRERERMJhAURERETCYQFEREREwmEBRERERMJhAURERETCYQFEREREwvl/9Q7cpNdd5K4AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "parent_ed = student[\"Fedu\"] + student[\"Medu\"]\n",
    "sns.boxenplot(student, x=parent_ed, y=\"G3\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "abf12be3-b997-4eea-a24a-03594eaba0d0",
   "metadata": {
    "tags": []
   },
   "source": [
    "可以看出随着父母受教育程度上升，最终成绩的平均值在上升，得分区间也在升高"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7e148eea-b6da-49c8-8570-7b6e6a087004",
   "metadata": {},
   "source": [
    "## 升学意愿对成绩的影响"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "149ef5b6-0891-4a8a-8497-c80ffc43c6de",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='higher_yes', ylabel='G3'>"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAGxCAYAAACKvAkXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAwhUlEQVR4nO3deXQUdb7//1dloRswCUIgi0QWlUUDCaDEMKggGQM6DAEHlWEGjCx3GMIVI4pRB4h4b+5xQyUMOF4hbgzqPSxuw2Iui05YZAkSR/gBFwgMJBCVxEQ7ZKnfH37psSWJRJKu7tTzcU6dY33qU596Nyb0i8+nusswTdMUAACAjQRYXQAAAIC3EYAAAIDtEIAAAIDtEIAAAIDtEIAAAIDtEIAAAIDtEIAAAIDtEIAAAIDtBFldgC+qra3VyZMnFRISIsMwrC4HAABcBNM09c033yg6OloBAQ3P8RCA6nDy5EnFxMRYXQYAAPgZjh8/rs6dOzfYhwBUh5CQEEnf/wGGhoZaXA0AALgYZWVliomJcb+PN4QAVIfzy16hoaEEIAAA/MzF3L7CTdAAAMB2CEAAAMB2CEAAAMB2CEAAAMB2CEAAAMB2CEAAAMB2CEAAAMB2CEAAgBaturra6hLggwhAAIAWKz8/X6NGjdLevXutLgU+xtIAlJWVpRtuuEEhISHq1KmTUlJSdODAAY8+LpdL06dPV4cOHXTZZZfpzjvvVHFxcYPjmqapOXPmKCoqSq1bt1ZSUpIOHjzYnC8FAOBjqqur9cwzz6iiokLPPPMMM0HwYGkA2rx5s6ZPn65t27Zpw4YNqqqq0m233aaKigp3nwceeEDvvfee3nnnHW3evFknT57UmDFjGhz3qaee0osvvqglS5Zo+/btatu2rZKTk+VyuZr7JQEAfMTKlSt14sQJSd8/23HVqlUWVwRfYpimaVpdxHlnzpxRp06dtHnzZt18880qLS1Vx44dtXz5cv3mN7+RJO3fv1+9e/fW1q1bdeONN14whmmaio6O1oMPPqhZs2ZJkkpLSxUREaGcnBzdc889P1lHWVmZwsLCVFpayrPAAMAPlZSUaPz48aqsrHS3ORwOvfnmmwoPD7ewMjSnxrx/+9Q9QKWlpZKk9u3bS5J27dqlqqoqJSUlufv06tVLV155pbZu3VrnGEeOHFFRUZHHOWFhYUpISKj3HABAy7Jo0SJVVVV5tFVVVWnx4sUWVQRf4zMBqLa2VjNnztQvfvELxcbGSpKKiorUqlUrtWvXzqNvRESEioqK6hznfHtERMRFn1NZWamysjKPDQDgn/bs2aONGzeqtrbWo722tla5ubnas2ePRZXBl/hMAJo+fboKCgq0YsUKr187KytLYWFh7i0mJsbrNQAAmsa6detkGEadxwzD0Lp167xcEXyRTwSgtLQ0vf/++9q4caM6d+7sbo+MjNS5c+d09uxZj/7FxcWKjIysc6zz7T/+pFhD52RkZKi0tNS9HT9+/BJeDQDASsnJyarv9lbTNDV8+HAvVwRfZGkAMk1TaWlpWrVqlf73f/9X3bp18zg+YMAABQcHKzc319124MABFRYWKjExsc4xu3XrpsjISI9zysrKtH379nrPcTgcCg0N9dgAAP6pX79+uvXWWxUQ4PkWFxAQoGHDhik+Pt6awuBTLA1A06dP1xtvvKHly5crJCRERUVFKioq0nfffSfp+5uXJ02apPT0dG3cuFG7du1SamqqEhMTPT4B1qtXL/fHGw3D0MyZM/Xkk0/q3Xff1b59+zRhwgRFR0crJSXFipcJAPCyP/7xjwoODvZoCw4O1rRp0yyqCL4myMqLn78bf8iQIR7ty5Yt07333itJWrBggQICAnTnnXeqsrJSycnJ+vOf/+zR/8CBA+5PkEnSww8/rIqKCk2dOlVnz57V4MGDtXbtWjmdzmZ9PQAA3xAeHq5JkyZ5vF9MnjyZj8DDzae+B8hX8D1AAOD/qqurlZqaquPHjysmJkbLli1TUJCl/+5HM/Pb7wECAKCpBAUF6cEHH1Tbtm01a9Yswg88MANUB2aAAKDlqK6uJvzYBDNAAAD8P4Qf1IUABAAAbIcABABo0X78ZbqARAACALRgM2bMUEpKiv793//d6lLgYwhAAIAWqaSkRPv27ZMkffbZZyopKbG4IvgSAhAAoEX6/e9/3+A+7I0ABABocVauXOl+rNJ53333nVauXGlRRfA1BCAAQIvz4osvNqod9kMAAgC0KNOnT2/weFpampcqgS8jAAEAWpR//OMfDR7//PPPvVQJfBkBCADQolx33XUNHo+NjfVSJfBlBCAAQIuSnZ3d4PGFCxd6qRL4MgIQAKDFqe+LD/lCRJxHAAIAtDhjxoxR69atPdpat26tMWPGWFQRfA0BCADQIr3++usN7sPeCEAAgBYpPDxcffr0kST17dtX4eHhFlcEXxJkdQEAADSXhQsX6uzZs2rXrp3VpcDHMAMEAGjRCD+oCwEIAADYDgEIAADYDgEIAADYDjdBAwD8nmmacrlcjTrH6XTKMIxmqgi+jgAEAPBrpmlqxowZKigoaNR5sbGxWrhwISHIpghAAAC/UddMj8vlanT4kaSCggKdPXtWTqfTo52ZIXsgAAEA/MLPnelpyOjRoy9oY2bIHrgJGgDgF37uTE9jFRQUNPp+IvgfZoAAAH7nzf+cJmer4CYd03WuSuMfXdykY8J3EYAAAH7H2SpYTkcrq8uAH2MJDAAA2I6lAWjLli0aOXKkoqOjZRiGVq9e7XHcMIw6t6effrreMefNm3dB/169ejXzKwEAAP7E0gBUUVGhuLg4LVq0qM7jp06d8tiWLl0qwzB05513Njjudddd53HeJ5980hzlAwAAP2XpPUAjRozQiBEj6j0eGRnpsb9mzRoNHTpU3bt3b3DcoKCgC84FAAA4z2/uASouLtYHH3ygSZMm/WTfgwcPKjo6Wt27d9f48eNVWFjohQoBAIC/8JtPgb366qsKCQnRmDFjGuyXkJCgnJwc9ezZU6dOnVJmZqZuuukmFRQUKCQkpM5zKisrVVlZ6d4vKytr0toBAIBv8ZsAtHTpUo0fP/6Cryz/sR8uqfXt21cJCQnq0qWL3n777Xpnj7KyspSZmdmk9QIAAN/lF0tgH3/8sQ4cOKDJkyc3+tx27dqpR48eOnToUL19MjIyVFpa6t6OHz9+KeUCAAAf5xcB6JVXXtGAAQMUFxfX6HPLy8t1+PBhRUVF1dvH4XAoNDTUYwMAAC2XpQGovLxc+fn5ys/PlyQdOXJE+fn5Hjctl5WV6Z133ql39mfYsGHKzs5278+aNUubN2/W0aNHlZeXp9GjRyswMFDjxo1r1tcCAAD8h6X3AO3cuVNDhw5176enp0uSJk6cqJycHEnSihUrZJpmvQHm8OHDKikpce+fOHFC48aN05dffqmOHTtq8ODB2rZtmzp27Nh8LwQAAPgVSwPQkCFDZJpmg32mTp2qqVOn1nv86NGjHvsrVqxoitIAAEAL5hf3AAEAADQlAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdv3kWGACgZTFNUy6X66L7/7Cvq7Kqyev54ZiNqUuSnE6nDMNo6pLQjAzzp76Ix4bKysoUFham0tJSHosBAM3ANE3NmDFDBQUFVpfSJGJjY7Vw4UJCkMUa8/7NEhgAwOtcLleLCT+SVFBQ0OhZI1iLJTAAgKWWzRgiZ3Cg1WX8LK6qGqUu3GR1GfgZCEAAAEs5gwPlbMXbEbyLJTAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7lgagLVu2aOTIkYqOjpZhGFq9erXH8XvvvVeGYXhsw4cP/8lxFy1apK5du8rpdCohIUE7duxoplcAAAD8kaUBqKKiQnFxcVq0aFG9fYYPH65Tp065t7/+9a8NjvnWW28pPT1dc+fO1e7duxUXF6fk5GSdPn26qcsHAAB+KsjKi48YMUIjRoxosI/D4VBkZORFj/ncc89pypQpSk1NlSQtWbJEH3zwgZYuXapHHnnkkuoFAAAtg6UB6GJs2rRJnTp10uWXX65bb71VTz75pDp06FBn33PnzmnXrl3KyMhwtwUEBCgpKUlbt271VskA4PdM05TL5Wq28X84tquqptmu09x+WHtz/nlJktPplGEYzXoNO/HpADR8+HCNGTNG3bp10+HDh/Xoo49qxIgR2rp1qwIDAy/oX1JSopqaGkVERHi0R0REaP/+/fVep7KyUpWVle79srKypnsRAOBnTNPUjBkzVFBQ4JXrpS7c5JXrNLfRo0c36/ixsbFauHAhIaiJ+HQAuueee9z/3adPH/Xt21dXXXWVNm3apGHDhjXZdbKyspSZmdlk4wGAP3O5XF4LP7h4BQUFcrlcat26tdWltAg+HYB+rHv37goPD9ehQ4fqDEDh4eEKDAxUcXGxR3txcXGD9xFlZGQoPT3dvV9WVqaYmJimKxwA/NRLv4mQI4gZBytVVpv6t/8p/umOaBS/CkAnTpzQl19+qaioqDqPt2rVSgMGDFBubq5SUlIkSbW1tcrNzVVaWlq94zocDjkcjuYoGQD8miPIkDOYr4yzVq3VBbRIlv5Ul5eXKz8/X/n5+ZKkI0eOKD8/X4WFhSovL9dDDz2kbdu26ejRo8rNzdWoUaN09dVXKzk52T3GsGHDlJ2d7d5PT0/Xyy+/rFdffVVffPGFpk2bpoqKCvenwgAAACydAdq5c6eGDh3q3j+/DDVx4kQtXrxYn332mV599VWdPXtW0dHRuu222zR//nyP2ZrDhw+rpKTEvX/33XfrzJkzmjNnjoqKihQfH6+1a9decGM0AACwL0sD0JAhQ2SaZr3H161b95NjHD169IK2tLS0Bpe8AACAvbGwCwAAbIcABAAAbIcABAAAbIcABAAAbIcABAAAbIcABAAAbIcABAAAbIcABAAAbIcABAAAbMevHoYKAP7ANE25XC6ry/jZflh7ZTUP4rTaD/8f+PPPlSQ5nU4ZhmF1GZIkw2zoWRQ2VVZWprCwMJWWlio0NNTqcgD4EdM0NWPGDBUUFFhdCuBzYmNjtXDhwmYLQY15/2YJDACakMvlIvwA9SgoKPCZWSyWwACgmWQP/kqOQCbZgcoaQ2mftLe6DA8EIABoJo5AU45Aq6sAfIHv/UOAJTAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCAAAGA7BCBAUnV1tdUlAAC8iAAE28vPz9eoUaO0d+9eq0sBAHgJAQi2Vl1drWeeeUYVFRV65plnmAkCAJsgAMHWVq5cqRMnTkiSjh8/rlWrVllcEQDAGwhAsK2SkhK98sorHm3//d//rZKSEosqAgB4CwEItrVo0SJVVVV5tFVVVWnx4sUWVQQA8BYCEGxpz5492rhxo2praz3aa2trlZubqz179lhUGQDAGwhAsKV169bJMIw6jxmGoXXr1nm5IgCANxGAYEvJyckyTbPOY6Zpavjw4V6uCADgTQQg2FK/fv106623KiDA81cgICBAw4YNU3x8vDWFAQC8ggAE2/rjH/+o4OBgj7bg4GBNmzbNoooAAN5iaQDasmWLRo4cqejoaBmGodWrV7uPVVVVafbs2erTp4/atm2r6OhoTZgwQSdPnmxwzHnz5skwDI+tV69ezfxK4I/Cw8M1adIkj7bJkycrPDzcoooAAN5iaQCqqKhQXFycFi1adMGxb7/9Vrt379af/vQn7d69WytXrtSBAwf061//+ifHve6663Tq1Cn39sknnzRH+WgBxowZo5iYGElSTEyMRo8ebXFFAABvCLLy4iNGjNCIESPqPBYWFqYNGzZ4tGVnZ2vgwIEqLCzUlVdeWe+4QUFBioyMbNJa0TIFBQXpwQcf1GOPPaZZs2YpKMjSXwkAgJf41T1ApaWlMgxD7dq1a7DfwYMHFR0dre7du2v8+PEqLCz0ToHwS/Hx8VqzZo3i4uKsLgUA4CV+889dl8ul2bNna9y4cQoNDa23X0JCgnJyctSzZ0+dOnVKmZmZuummm1RQUKCQkJA6z6msrFRlZaV7v6ysrMnrh29j5gcA7MUv/tavqqrSXXfdJdM0f/IxBT9cUuvbt68SEhLUpUsXvf322xfc8HpeVlaWMjMzm7RmAADgu3x+Cex8+Dl27Jg2bNjQ4OxPXdq1a6cePXro0KFD9fbJyMhQaWmpezt+/Pillg0/8+2331pdAgDAi3w6AJ0PPwcPHtRHH32kDh06NHqM8vJyHT58WFFRUfX2cTgcCg0N9dhgHy+88IJuv/12vfjii1aXAgDwEksDUHl5ufLz85Wfny9JOnLkiPLz81VYWKiqqir95je/0c6dO/Xmm2+qpqZGRUVFKioq0rlz59xjDBs2TNnZ2e79WbNmafPmzTp69Kjy8vI0evRoBQYGaty4cd5+efAD5eXlWrVqlSRp5cqVKi8vt7giAIA3WBqAdu7cqX79+qlfv36SpPT0dPXr109z5szRP//5T7377rs6ceKE4uPjFRUV5d7y8vLcYxw+fFglJSXu/RMnTmjcuHHq2bOn7rrrLnXo0EHbtm1Tx44dvf764PvS0tIa3AcAtEyW3gQ9ZMiQeh9IKanBY+cdPXrUY3/FihWXWhZsYseOHRf8/Bw9elQ7duzQwIEDrSkKAOAVPn0PENCc/vSnPzWqHQDQchCAYEsLFizw+O6nH6qsrNTzzz/v3YIAAF5FAIIt/fgxKz+2fv16L1UCALACAQi2dNtttzV4PDk52UuVAACsQACCLc2cOVMOh6POYw6HQ/fff7+XKwIAeBMBCLY1f/78RrUDAFoOAhBsa+DAgeratatHW9euXfkIPADYAAEItvbDbxGvax8A0DIRgGBrl112mUaPHi1JGjNmjC677DKLKwIAeIOl3wQN+IL7779fU6ZMUZs2bawuBQDgJcwAARLhBwBshgAEAABshwAEAABshwAEAABshwAEAABshwAEAABshwAEAABsh+8BAoBmYJqmqmtNBRpWVwJYr7r2+98Jw/CdXwgCEAA0g4qKCr37/9UqiHl2QNW13/9O+NK37fOrCQAAbIcZIABoBm3bttWve7jkCLS6EsB6lTXSh0VtrS7DAwEIAJqBYRgKCjBYAgMk1Zjyqft/JJbAAACADRGAAACA7RCAAACA7RCAAACA7RCAAACA7RCAAACA7RCAAACA7TQ6AJmmqSNHjqi6ulqSdO7cOb311lt67bXXVFJS0uQFAgAANLVGfRHigQMHlJycrOPHj6t79+5av369xo4dq/3798s0TbVp00Z5eXm65pprmqteAACAS9aoGaDZs2crLi5O+fn5+tWvfqU77rhDnTt31tdff62vvvpKiYmJeuKJJy56vC1btmjkyJGKjo6WYRhavXq1x3HTNDVnzhxFRUWpdevWSkpK0sGDB39y3EWLFqlr165yOp1KSEjQjh07GvMyAQBAC9eoAJSXl6fMzEz16dNHTz75pPbv369Zs2YpODhYDodDjzzyiLZs2XLR41VUVCguLk6LFi2q8/hTTz2lF198UUuWLNH27dvVtm1bJScny+Vy1TvmW2+9pfT0dM2dO1e7d+9WXFyckpOTdfr06ca8VAAA0II1KgCVl5erffv2kr5/0F/btm0VFRXlPh4TE6Pi4uKLHm/EiBF68sknNXr06AuOmaap559/Xo8//rhGjRqlvn376rXXXtPJkycvmCn6oeeee05TpkxRamqqrr32Wi1ZskRt2rTR0qVLL/6FAgCAFq1R9wBFR0ersLBQV155paTvZ2g6derkPn7mzBldfvnlTVLYkSNHVFRUpKSkJHdbWFiYEhIStHXrVt1zzz0XnHPu3Dnt2rVLGRkZ7raAgAAlJSVp69atTVJXUzFNs8GZLMCunE6nzz00EUDL06gAlJSUpP3792vw4MGSpGnTpnkcX79+vfr3798khRUVFUmSIiIiPNojIiLcx36spKRENTU1dZ6zf//+eq9VWVmpyspK935ZWdnPLfuimKapGTNmqKCgoFmvA/ij2NhYLVy4kBAEoFk1KgAtWbKkweN33323Jk6ceEkFWSErK0uZmZleu57L5SL8APUoKCiQy+VS69atrS4FQAvWqADkcrn00Ucf6Ve/+pUkKSMjw2PmJDAwUPPnz2+SwiIjIyVJxcXFHvcZFRcXKz4+vs5zwsPDFRgYeMF9SMXFxe7x6pKRkaH09HT3fllZmWJiYi6h+otXHj9OZkCj/jcALZJRW63L8v9qdRkAbKJR77w5OTn64IMP3AEoOztb1113nftfavv371d0dLQeeOCBSy6sW7duioyMVG5urjvwlJWVafv27RcsvZ3XqlUrDRgwQLm5uUpJSZEk1dbWKjc3V2lpafVey+FwyOFwXHLNP4cZECQFBltybcCXmFYXAMBWGvUpsDfffFNTp071aFu+fLk2btyojRs36umnn9bbb7990eOVl5crPz9f+fn5kr6/8Tk/P1+FhYUyDEMzZ87Uk08+qXfffVf79u3ThAkTFB0d7Q43kjRs2DBlZ2e799PT0/Xyyy/r1Vdf1RdffKFp06apoqJCqampjXmpAACgBWvUDNChQ4fUp08f977T6VRAwL8y1MCBAzV9+vSLHm/nzp0aOnSoe//8MtTEiROVk5Ojhx9+WBUVFZo6darOnj2rwYMHa+3atXI6ne5zDh8+7PEIjrvvvltnzpzRnDlzVFRUpPj4eK1du/aCG6MBAIB9NSoAnT171uOenzNnzngcr62t9Tj+U4YMGSLTrH/i2zAMPfHEEw1+u/TRo0cvaEtLS2twyQsAANhbo5bAOnfu3OCnlz777DN17tz5kosCAABoTo0KQLfffrvmzJlT5xf4fffdd8rMzNQdd9zRZMUBAAA0h0YtgT366KN6++231bNnT6WlpalHjx6Svn9KfHZ2tqqrq/Xoo482S6EAAABNpVEBKCIiQnl5eZo2bZoeeeQR9/07hmHol7/8pf785z9zszEAAPB5jf4Gvm7dumnt2rX66quvdOjQIUnS1Vdf7X5IKgAAgK/72V9B3L59ew0cOLApawEAAPCKRt0EDQAA0BIQgAAAgO0QgAAAgO3wGHIAaCaVNYZ4zCtw/nfBtxCAAKCZpH3Cp2MBX8USGAA0IafTqdjYWKvLAHxSbGysxwPNrcQMEAA0IcMwtHDhwjofGeQvXC6XRo8eLUl66Ted5Aji38pWqqyu1b/9z2lJ0qpVq3wmQPwcTqdThuEby2EEIABoYoZhqHXr1laX0SQcQQFyBhOAfIXT6WwxP1tW46caAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDs8Cs5BpmjJraySDHAqotkamafrMgxIBtGwEIAtVVFSo6uguyQi0uhTAemaNKioqdNlll1ldCQAbYOoBAADYDjNAFmrbtq1quw6QAoOtLgWwXk2V2n693+oqANgEAchChmHICAiUAlgCA2TWcv8PAK9hCQwAANiOzwegrl27fj9T8qNt+vTpdfbPycm5oK/T6fRy1QAAwJf5/BLYp59+qpqaGvd+QUGBfvnLX2rs2LH1nhMaGqoDBw6495lWBwAAP+TzAahjx44e+//1X/+lq666Srfccku95xiGocjIyOYuDQAA+CmfXwL7oXPnzumNN97Qfffd1+CsTnl5ubp06aKYmBiNGjVKn3/+uRerBAAAvs6vAtDq1at19uxZ3XvvvfX26dmzp5YuXao1a9bojTfeUG1trQYNGqQTJ07Ue05lZaXKyso8NgAA0HL5VQB65ZVXNGLECEVHR9fbJzExURMmTFB8fLxuueUWrVy5Uh07dtRLL71U7zlZWVkKCwtzbzExMc1RPgAA8BF+E4COHTumjz76SJMnT27UecHBwerXr58OHTpUb5+MjAyVlpa6t+PHj19quQAAwIf5TQBatmyZOnXqpDvuuKNR59XU1Gjfvn2Kioqqt4/D4VBoaKjHBgAAWi6/CEC1tbVatmyZJk6cqKAgzw+uTZgwQRkZGe79J554QuvXr9f//d//affu3frd736nY8eONXrmCAAAtFw+/zF4Sfroo49UWFio++6774JjhYWFCgj4V477+uuvNWXKFBUVFenyyy/XgAEDlJeXp2uvvdabJQMAAB/mFwHotttuk2madR7btGmTx/6CBQu0YMECL1QFAAD8lV8sgQEAADQlAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALCdIKsLAAD4rspqU1Kt1WXY2vf/D9DUCEAAgHr92/8UW10C0CxYAgMAeHA6nYqNjbW6DPxIbGysnE6n1WW0GMwAAQA8GIahhQsXyuVyNds1XC6XRo8eLUlaNmOInMGBzXat5uSqqlHqwk2SpFWrVjVrQHE6nTIMo9nGtxsCEADgAoZhqHXr1l65ljM4UM5W/v925HQ6vfZnhkvHEhgAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdAhAAALAdnw5A8+bNk2EYHluvXr0aPOedd95Rr1695HQ61adPH3344YdeqhYAAPgLnw5AknTdddfp1KlT7u2TTz6pt29eXp7GjRunSZMmac+ePUpJSVFKSooKCgq8WDEAAPB1Ph+AgoKCFBkZ6d7Cw8Pr7fvCCy9o+PDheuihh9S7d2/Nnz9f/fv3V3Z2thcrBgAAvs7nA9DBgwcVHR2t7t27a/z48SosLKy379atW5WUlOTRlpycrK1btzZ3mQAAwI/49ON3ExISlJOTo549e+rUqVPKzMzUTTfdpIKCAoWEhFzQv6ioSBERER5tERERKioqavA6lZWVqqysdO+XlZU1zQsAAAA+yacD0IgRI9z/3bdvXyUkJKhLly56++23NWnSpCa7TlZWljIzM5tsPAAA4Nt8fgnsh9q1a6cePXro0KFDdR6PjIxUcXGxR1txcbEiIyMbHDcjI0OlpaXu7fjx401WMwAA8D1+FYDKy8t1+PBhRUVF1Xk8MTFRubm5Hm0bNmxQYmJig+M6HA6FhoZ6bAAAoOXy6QA0a9Ysbd68WUePHlVeXp5Gjx6twMBAjRs3TpI0YcIEZWRkuPvff//9Wrt2rZ599lnt379f8+bN086dO5WWlmbVSwAAAD7Ip+8BOnHihMaNG6cvv/xSHTt21ODBg7Vt2zZ17NhRklRYWKiAgH9luEGDBmn58uV6/PHH9eijj+qaa67R6tWrFRsba9VLAAAAPsinA9CKFSsaPL5p06YL2saOHauxY8c2U0UAAKAl8OklMAAAgOZAAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALZDAAIAALbj0wEoKytLN9xwg0JCQtSpUyelpKTowIEDDZ6Tk5MjwzA8NqfT6aWKAQCAP/DpALR582ZNnz5d27Zt04YNG1RVVaXbbrtNFRUVDZ4XGhqqU6dOubdjx455qWIAAOAPgqwuoCFr16712M/JyVGnTp20a9cu3XzzzfWeZxiGIiMjm7s8AADgp3x6BujHSktLJUnt27dvsF95ebm6dOmimJgYjRo1Sp9//rk3ygMAAH7CbwJQbW2tZs6cqV/84heKjY2tt1/Pnj21dOlSrVmzRm+88YZqa2s1aNAgnThxot5zKisrVVZW5rEBAICWy6eXwH5o+vTpKigo0CeffNJgv8TERCUmJrr3Bw0apN69e+ull17S/Pnz6zwnKytLmZmZTVovAADwXX4xA5SWlqb3339fGzduVOfOnRt1bnBwsPr166dDhw7V2ycjI0OlpaXu7fjx45daMgAA8GE+PQNkmqZmzJihVatWadOmTerWrVujx6ipqdG+fft0++2319vH4XDI4XBcSqkAAMCP+HQAmj59upYvX641a9YoJCRERUVFkqSwsDC1bt1akjRhwgRdccUVysrKkiQ98cQTuvHGG3X11Vfr7Nmzevrpp3Xs2DFNnjzZstcBAAB8i08HoMWLF0uShgwZ4tG+bNky3XvvvZKkwsJCBQT8ayXv66+/1pQpU1RUVKTLL79cAwYMUF5enq699lpvlQ0AAHycTwcg0zR/ss+mTZs89hcsWKAFCxY0U0UAAKAl8IuboAEAAJoSAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANgOAQgAANiOXwSgRYsWqWvXrnI6nUpISNCOHTsa7P/OO++oV69ecjqd6tOnjz788EMvVQoAAPyBzwegt956S+np6Zo7d652796tuLg4JScn6/Tp03X2z8vL07hx4zRp0iTt2bNHKSkpSklJUUFBgZcrBwAAvsrnA9Bzzz2nKVOmKDU1Vddee62WLFmiNm3aaOnSpXX2f+GFFzR8+HA99NBD6t27t+bPn6/+/fsrOzvby5UDAABfFWR1AQ05d+6cdu3apYyMDHdbQECAkpKStHXr1jrP2bp1q9LT0z3akpOTtXr16uYs9WczaqtlWl0E4AOM2mqrS4BFXFU1Vpfws/lz7Xbn0wGopKRENTU1ioiI8GiPiIjQ/v376zynqKiozv5FRUX1XqeyslKVlZXu/bKyskuounEuy/+r164FAL4odeEmq0uADfn8Epg3ZGVlKSwszL3FxMQ06/WcTqdiY2Ob9RqAv4qNjZXT6bS6DDSzlvb3ID+3/senZ4DCw8MVGBio4uJij/bi4mJFRkbWeU5kZGSj+ktSRkaGx7JZWVlZs4YgwzC0cOFCuVyuZrsG4K+cTqcMw7C6DDSzn/v3oGmaHjP2P9XeEIfDUefPWn3tDeHn1v/4dABq1aqVBgwYoNzcXKWkpEiSamtrlZubq7S0tDrPSUxMVG5urmbOnOlu27BhgxITE+u9jsPhkMPhaMrSf5JhGGrdurVXrwkAvuTn/j3Ypk2bZqgGduPTAUiS0tPTNXHiRF1//fUaOHCgnn/+eVVUVCg1NVWSNGHCBF1xxRXKysqSJN1///265ZZb9Oyzz+qOO+7QihUrtHPnTv3lL3+x8mUAAAAf4vMB6O6779aZM2c0Z84cFRUVKT4+XmvXrnXf6FxYWKiAgH/dyjRo0CAtX75cjz/+uB599FFdc801Wr16dYtaawYAAJfGME2TT2H/SFlZmcLCwlRaWqrQ0FCrywEAABehMe/ffAoMAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYDgEIAADYjs8/C8wK558OUlZWZnElAADgYp1/376Yp3wRgOrwzTffSJJiYmIsrgQAADTWN998o7CwsAb78DDUOtTW1urkyZMKCQmRYRhWl4NmVlZWppiYGB0/fpyH3wItDL/f9mKapr755htFR0crIKDhu3yYAapDQECAOnfubHUZ8LLQ0FD+ggRaKH6/7eOnZn7O4yZoAABgOwQgAABgOwQg2J7D4dDcuXPlcDisLgVAE+P3G/XhJmgAAGA7zAABAADbIQABAADbIQABAADbIQDB9hYtWqSuXbvK6XQqISFBO3bssLokAJdoy5YtGjlypKKjo2UYhlavXm11SfAxBCDY2ltvvaX09HTNnTtXu3fvVlxcnJKTk3X69GmrSwNwCSoqKhQXF6dFixZZXQp8FJ8Cg60lJCTohhtuUHZ2tqTvH4MSExOjGTNm6JFHHrG4OgBNwTAMrVq1SikpKVaXAh/CDBBs69y5c9q1a5eSkpLcbQEBAUpKStLWrVstrAwA0NwIQLCtkpIS1dTUKCIiwqM9IiJCRUVFFlUFAPAGAhAAALAdAhBsKzw8XIGBgSouLvZoLy4uVmRkpEVVAQC8gQAE22rVqpUGDBig3Nxcd1ttba1yc3OVmJhoYWUAgOYWZHUBgJXS09M1ceJEXX/99Ro4cKCef/55VVRUKDU11erSAFyC8vJyHTp0yL1/5MgR5efnq3379rryyistrAy+go/Bw/ays7P19NNPq6ioSPHx8XrxxReVkJBgdVkALsGmTZs0dOjQC9onTpyonJwc7xcEn0MAAgAAtsM9QAAAwHYIQAAAwHYIQAAAwHYIQAAAwHYIQAAAwHYIQAAAwHYIQAAAwHYIQAAAwHYIQACa3ZAhQzRz5sx6jxuGodWrV1/0eJs2bZJhGDp79uwl1wbAnngWGADLnTp1SpdffrnVZQCwEQIQAMtFRkZaXYIkqaqqSsHBwVaXAcALWAID4BW1tbV6+OGH1b59e0VGRmrevHnuYz9eAsvLy1N8fLycTqeuv/56rV69WoZhKD8/32PMXbt26frrr1ebNm00aNAgHThwwOP4mjVr1L9/fzmdTnXv3l2ZmZmqrq72uO7ixYv161//Wm3bttV//Md/1Fu/aZq6+uqr9cwzz3i05+fnyzAM95PHz549q8mTJ6tjx44KDQ3Vrbfeqr1797r77927V0OHDlVISIhCQ0M1YMAA7dy582L/GAE0EQIQAK949dVX1bZtW23fvl1PPfWUnnjiCW3YsOGCfmVlZRo5cqT69Omj3bt3a/78+Zo9e3adYz722GN69tlntXPnTgUFBem+++5zH/v44481YcIE3X///frHP/6hl156STk5OReEnHnz5mn06NHat2+fx/k/ZhiG7rvvPi1btsyjfdmyZbr55pt19dVXS5LGjh2r06dP629/+5t27dql/v37a9iwYfrqq68kSePHj1fnzp316aefateuXXrkkUeYdQKsYAJAM7vlllvMwYMHe7TdcMMN5uzZs03TNE1J5qpVq0zTNM3FixebHTp0ML/77jt335dfftmUZO7Zs8c0TdPcuHGjKcn86KOP3H0++OADU5L7vGHDhpn/+Z//6XHN119/3YyKinLvSzJnzpx50a/jn//8pxkYGGhu377dNE3TPHfunBkeHm7m5OSYpmmaH3/8sRkaGmq6XC6P86666irzpZdeMk3TNENCQtz9AViHe4AAeEXfvn099qOionT69OkL+h04cEB9+/aV0+l0tw0cOPAnx4yKipIknT59WldeeaX27t2rv//97x4zPjU1NXK5XPr222/Vpk0bSdL1119/0a8hOjpad9xxh5YuXaqBAwfqvffeU2VlpcaOHSvp++Wt8vJydejQweO87777TocPH5Ykpaena/LkyXr99deVlJSksWPH6qqrrrroGgA0DQIQAK/48TKPYRiqra1tsjENw5Ak95jl5eXKzMzUmDFjLjjvh+Gqbdu2jbrm5MmT9fvf/14LFizQsmXLdPfdd7vDVHl5uaKiorRp06YLzmvXrp2k75fcfvvb3+qDDz7Q3/72N82dO1crVqzQ6NGjG1UHgEtDAALgU3r27Kk33nhDlZWVcjgckqRPP/200eP0799fBw4ccN+b01Ruv/12tW3bVosXL9batWu1ZcsWj2sWFRUpKChIXbt2rXeMHj16qEePHnrggQc0btw4LVu2jAAEeBk3QQPwKb/97W9VW1urqVOn6osvvtC6devcn7w6P8tzMebMmaPXXntNmZmZ+vzzz/XFF19oxYoVevzxxy+pvsDAQN17773KyMjQNddco8TERPexpKQkJSYmKiUlRevXr9fRo0eVl5enxx57TDt37tR3332ntLQ0bdq0SceOHdPf//53ffrpp+rdu/cl1QSg8QhAAHxKaGio3nvvPeXn5ys+Pl6PPfaY5syZI8lz6eqnJCcn6/3339f69et1ww036MYbb9SCBQvUpUuXS65x0qRJOnfunFJTUz3aDcPQhx9+qJtvvlmpqanq0aOH7rnnHh07dkwREREKDAzUl19+qQkTJqhHjx666667NGLECGVmZl5yTQAaxzBN07S6CABoyJtvvqnU1FSVlpaqdevWVpejjz/+WMOGDdPx48cVERFhdTkAfgbuAQLgc1577TV1795dV1xxhfbu3avZs2frrrvusjz8VFZW6syZM5o3b57Gjh1L+AH8GEtgAHxOUVGRfve736l379564IEHNHbsWP3lL39p9uv+4Q9/0GWXXVbn9oc//EF//etf1aVLF509e1ZPPfVUs9cDoPmwBAYA/8/p06dVVlZW57HQ0FB16tTJyxUBaC4EIAAAYDssgQEAANshAAEAANshAAEAANshAAEAANshAAEAANshAAEAANshAAEAANshAAEAANv5/wGzF2IClHrwGQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.boxenplot(student, x=\"higher_yes\", y=\"G3\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4f345b4d-6659-4d09-8944-69c969e7b15d",
   "metadata": {
    "tags": []
   },
   "source": [
    "显然有升学意愿的人成绩更高"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c75f2171-5d56-4305-b427-6d7915cf2449",
   "metadata": {},
   "source": [
    "# 模型训练"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a1fd765b-4daf-4da3-af62-591e3761edfe",
   "metadata": {},
   "source": [
    "## 均方根误差，平均绝对误差"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "447c211b-3771-4f81-aad7-9138865ee384",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "def evaluate_predictions(y_hat, y): \n",
    "    mae = np.mean(abs(y_hat - y)) \n",
    "    rmse = np.sqrt(np.mean((y_hat - y) ** 2)) \n",
    "    return mae, rmse "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f1b2cf26-2353-41b9-b2ae-269a16bd9a00",
   "metadata": {},
   "source": [
    "## 先单独计算线性回归误差"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "c970655d-f100-4d4c-a644-1c026b5e5c73",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "3.5537271620352056 4.705178887709819\n"
     ]
    }
   ],
   "source": [
    "y = student.loc[:, \"G3\"]\n",
    "x = student.drop(\"G3\", axis=\"columns\")\n",
    "X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.2, random_state=123456) #固定种子\n",
    "model1 = LinearRegression()\n",
    "model1.fit(X_train, y_train)\n",
    "y_hat = model1.predict(X_test)\n",
    "\n",
    "#误差计算\n",
    "mae = np.mean(abs(y_hat - y_test))\n",
    "rmse = np.sqrt(np.mean((y_hat - y_test) ** 2))\n",
    "print(mae, rmse)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "946a01b3-b417-4ff6-81fe-e6b04cb4520c",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                            mae      rmse\n",
      "Linear Regression      3.553727  4.705179\n",
      "ElasticNet Regression   3.48858  4.636734\n",
      "Random Forest          3.074177  4.177558\n",
      "Extra Trees            3.506835  4.525027\n",
      "SVM                    3.409255  4.629435\n",
      "Gradient Boosted        3.18642  4.280975\n",
      "Baseline               3.607595  4.902854\n"
     ]
    }
   ],
   "source": [
    "# 通过训练集训练和测试集测试来生成多个线性模型\n",
    "def evaluate(X_train, X_test, y_train, y_test):\n",
    "    # 模型名称\n",
    "    model_name_list = ['Linear Regression', 'ElasticNet Regression',\n",
    "                      'Random Forest', 'Extra Trees', 'SVM',\n",
    "                       'Gradient Boosted', 'Baseline']\n",
    "    # 实例化模型\n",
    "    model1 = LinearRegression()\n",
    "    model2 = ElasticNet(alpha=1.0, l1_ratio=0.5)\n",
    "    model3 = RandomForestRegressor(n_estimators=100)\n",
    "    model4 = ExtraTreesRegressor(n_estimators=100)\n",
    "    model5 = SVR(kernel='rbf', degree=3, C=1.0, gamma='auto')\n",
    "    model6 = GradientBoostingRegressor(n_estimators=50)\n",
    "    \n",
    "    # 结果数据框\n",
    "    results = pd.DataFrame(columns=['mae', 'rmse'], index = model_name_list)\n",
    "    \n",
    "    # 每种模型的训练和预测\n",
    "    for i, model in enumerate([model1, model2, model3, model4, model5, model6]):\n",
    "        model.fit(X_train, y_train)\n",
    "        predictions = model.predict(X_test)\n",
    "        \n",
    "        # 误差标准\n",
    "        mae = np.mean(abs(predictions - y_test))\n",
    "        rmse = np.sqrt(np.mean((predictions - y_test) ** 2))\n",
    "        \n",
    "        # 将结果插入结果框\n",
    "        model_name = model_name_list[i]\n",
    "        results.loc[model_name, :] = [mae, rmse]\n",
    "    \n",
    "    # 中值基准度量\n",
    "    baseline = np.median(y_train)\n",
    "    baseline_mae = np.mean(abs(baseline - y_test))\n",
    "    baseline_rmse = np.sqrt(np.mean((baseline - y_test) ** 2))\n",
    "    \n",
    "    results.loc['Baseline', :] = [baseline_mae, baseline_rmse]\n",
    "    \n",
    "    return results\n",
    "results = evaluate(X_train, X_test, y_train, y_test)\n",
    "print(results)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "10032aa3-6d59-4a4b-8d98-83bc006fe183",
   "metadata": {},
   "source": [
    "通过上方代码计算出了各种模型的误差,接下来可视化误差的大小，挑选最合适的模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "71df804a-00eb-4dac-997a-e580f3da61d6",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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QBRDAAD4PJpSAAAAKLU6dero5ptvliTt2rVLKSkphY4NDQ1VVFRUnpe/y8zM9HQIAAB4HZpSKBPt2rXTsGHD9Oijj6pSpUqqVq2axo8frzNnzmjgwIGqUKGC6tatq8WLF0u68ASYwYMHq3bt2goPD9eVV16pd955J992J0yYoAYNGigsLEz169fX2LFj7f5qAACgEFdddZVzOTk52YOReF67du300EMP6dFHH1XVqlUVGhoqwzC0ZMkSNW3aVOHh4brpppt0+PBhLV68WA0aNFBUVJTuuecenT171rmd2bNnq3HjxgoPD1eVKlXUsWNHnTlzxrme2ggA4MtoSqHMTJkyRVWrVtXGjRs1bNgw/d///Z969eqlG264QT/++KM6deqkfv366ezZs8rJyVFcXJxmzZqlbdu2acSIEXr22Wf12WefObc3ffp0jRgxQq+88oq2b9+uV199Vc8//7ymTJniwW8JAABy8WS3vKZMmaKQkBCtW7dOH3zwgSRp5MiR+s9//qNvv/1WBw4cUO/evfX222/rk08+0cKFC7V06VLn5Y9//PGH+vTpo0GDBmn79u1auXKlunfvLtM0JVEbAQB8n2HmHtXgMWlpaYqOjlZqamq+09fT09O1d+9e1a5dW2FhYc737a75iruXtGvXTtnZ2VqzZo2kC2dCRUdHq3v37po6daok6c8//1SNGjW0fv16tWjRIt82HnroIf3555+aPXu2JKlu3br617/+pT59+jjHvPzyy1q0aJG+/fbbAuMoLH8AAJQlq2O7P7v99tu1cOFCSdLBgwd16aWXuvS5ktRC3l4MtWvXTmlpafrxxx8lSStXrlT79u21fPlydejQQZL02muv6ZlnntHu3btVp04dSdL999+vffv26auvvtKPP/6oZs2aad++fapVq1a+OaiNAADeytVaiKfvocxcffXVzuWgoCBVqVJFjRs3dr5XrVo1SdLhw4clSf/97381adIk7d+/X+fOnVNmZqaaNGkiSTpz5ox2796twYMH6+9//7tzG1lZWYqOjrbh2wAAACt79+7VsmXLJEmXX365yw0pf9asWbN8711cH1WrVk0RERHOhlTuexs3bpQkXXPNNerQoYMaN26szp07q1OnTurZs6cqVapEbQQA8As0pVBmcp/Ak8swjDzv5Z7in5OTo5kzZ+of//iHRo8erZYtW6pChQp644039N1330mSTp8+LUkaP368rr/++jzbDQoKKsuvAQBAwJs/f766dOmi4OCCS8dDhw6pR48ezpt5P/DAA3aG57UiIyPzvffXWqigeiknJ0fShRpn2bJl+vbbb52X9T333HP67rvvFBERIYnaCADg22hKwSusW7dON9xwQ54idvfu3c7latWqKTY2Vnv27NG9997riRABAGXE225DxI0N8hs2bJjOnz+vHj16qGXLlrrssssUHh6uo0ePauXKlfrwww919OhRSdKNN96oBx980MMR+w/DMNSqVSu1atVKI0aMUK1atfT555/r8ccfpzYCAH8RwMUQTSl4hSuuuEJTp07VkiVLVLt2bU2bNk3ff/+9ateu7Rzz4osv6uGHH1Z0dLRuueUWZWRkKCkpSSdOnNDjjz/uwegBAPB/KSkpeu+995w34S5Ijx49NGHCBIWGhtoYmf/67rvv9PXXX6tTp06KiYnRd999pyNHjqhBgwaSqI0AAL7PZ5tSaWlpWrRokb7//nslJSUpOTlZR44c0blz51SxYkVdddVVuvXWWzV48GBVqVKlxPNMnjxZAwcOdGnsRx99pAEDBpR4rkB23333adOmTbrrrrtkGIb69OmjBx54QIsXL3aOGTJkiCIiIvTGG2/oiSeeUGRkpBo3bqxHH33Uc4EDABAApkyZolWrVmn9+vXas2ePjh49qrS0NJUvX17x8fG64YYb1L9/f7Vs2dLTofqVqKgorV69Wm+//bbS0tJUq1YtjR49Wl26dJFEbQQA8H0++/S95cuX6+abby5yXNWqVfXxxx+rc+fOJZrHjqZUiZ44A5eQPwDwfv54xnqgPn2vpKiF7EM+AcAL+WExFBBP34uPj1f79u3VrFkzxcfHq0aNGsrJydHBgwc1e/ZszZ07V0ePHtUdd9yhjRs36pprrinVfEuWLFFsbGyh6+Pi4kq1fQAAAAAAgEDhs02p9u3ba//+/YWu7927t7744gslJCQoMzNTL774oubOnVuqOevVq6fLLrusVNsAAAAAAACA5PB0ACXlyqNu77zzTl155ZWSpDVr1pR1SAAAFMgwvOsFAAAAeAOfbUq5qkKFCpIuXD8PAAAAAAAA7+DXTalff/1VmzdvliTVr1/fs8EAAAAAAADAye+aUmfPntXOnTv11ltvqW3btsrKypIktzwad+DAgYqNjVVI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tgeXeiYPio+PV/v27dWsWTPFx8erRo0aysnJ0cGDBzV79mzNnTtXR48e1R133KGNGzfqmmuuKdE8zz33nLMh1bRpUz355JO6/PLLtXv3bv373//Wpk2bNGHCBF1yySV69dVX3fkVAQAAAAAA/JLPnimVnZ2toKAgyzFffPGFEhISJEkJCQmaO3dusef57bff1LBhQ2VlZenaa6/V6tWrFR4e7lx/9uxZtW3bVklJSQoODtb27dtVt27dYs3BmVL28ab8kBtr5Mca+bFGfqyRH2ucKWU/zpSyEfmxRn4KR26skR9r5MeaH+bH1WO7z95TqqiGlCTdeeeduvLKKyVJa9asKdE8b7/9trKysiRJ7733Xp6GlCRFRETovffekyRlZWVpzJgxJZoHAAAAAAAgkPhsU8pVFSpUkCSlp6cX+7OmaWrevHmSpPr166tFixYFjmvRooWz+TVv3jz56MlnAAAAAAAAtvHrptSvv/6qzZs3S7rQVCquvXv3KiUlRZLUtm1by7G565OTk7Vv375izwUAAOCLnnrqKRmG4XytXLnS0yEBAAAf4XdNqbNnz2rnzp1666231LZtW+eld48++mixt7Vt2zbnclFNrYvXb9++vdhzAQAA+JrNmzfrrbfe8nQYAADAR/n00/dyTZ48WQMHDix0/dNPP6177rmn2Ns9ePCgczkuLs5ybHx8vHP5wIEDxZ4LAADAl+Tk5Gjo0KHKyspSTEyMDh8+7OmQAACAj/G7M6Uu1qRJE23cuFGjRo2SUYK72Z86dcq5XL58ecuxkZGRzuXTp09bjs3IyFBaWlqeFwAAgC9599139f3336t+/foaPHiwp8MBAAA+yC+aUnfeeae2bt2qrVu3auPGjZoxY4YSEhK0efNm9enTRwsWLCjRdi++OXpISIjl2NDQUOfyuXPnLMeOGjVK0dHRztfFZ1kBAAB4u/379+v555+XJH3wwQdF1kkAAAAF8YumVMWKFdWoUSM1atRIzZs319133625c+dq6tSp2rNnj7p166bJkycXe7thYWHO5czMTMuxGRkZzuXw8HDLsc8884xSU1OdLy73AwAAvuTBBx/U6dOn1b9//yIfBgMAAFAYv2hKFaZfv37q1auXcnJy9NBDD+n48ePF+nyFChWcy0VdknfmzBnnclGX+oWGhioqKirPCwAAwBd89tlnWrBggSpX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9vGm/JAba+THGvmxRn6skR9r3tqUcqfs7Gy3bq+0aErZiPxYIz+FIzfWyI818mPND/Pj6rG9zB6Z165dO02aNEmHDh3SJ598oi5duigoKEjJyckaM2ZMWU0LAADgd0zTdOsLAADAG5T5jQhy7y9lGIbbf+UDAADwdzk5OZ4OAQAAoEyUWVNq1apVmjZtmubMmaO0tDRJF37lq1Gjhvr161dW0wIAAAAAAMAHuLUptX37dk2bNi3Pjc5N01RERIQSEhKUmJioDh06yOEos6sGAQAAYOGHH35Qs2bNPB0GAABA6ZtShw8f1owZMzRt2jRt2rRJ0oVGlMPhUPv27ZWYmKju3bsrMjKy1MECAACgZL799lv961//0rJly5SVleXpcAAAAErWlEpPT9cXX3yhadOmadmyZcrOznbeNLNhw4ZKTEzUvffeq9jYWLcGCwAAgOL5+uuv9fLLL2v16tWeDgUAACCPEjWlYmJidObMGUkXzoqqXr26+vTpo379+qlJkybujA8AAAC6UHN9/vnnWr58uQ4cOKBy5crpsssuU8+ePXXDDTfkG79y5Uo9++yz+u6775yfl6ROnTrZGjcAAEBhStSUOn36tAzDUFhYmO644w516tRJQUFB+umnn/TTTz+VKJDExMQSfQ4AAMDf/f777+rWrZu2bt2ab90777yjXr16afr06QoKCtKxY8c0ZMgQffnll5IuNKMMw1C3bt303HPP6dprr7U7fAAAgAIZZu7PZsXgcDhkGIb7gjCMgL63QVpamqKjo5WamqqoqKhSbcuN/7O4RfH3rrLlTfkhN9bIjzXyY438WCM/1tyRH3ce2zMzM9WsWTP98ssvhY4xDEPDhw/XsGHD1LZtW/3+++8yTVNBQUHq3bu3nn32WTVs2LBUcZQld+bLL3codyI/1shP4ciNNfJjjfxY88P8uHpsL/GNzkvQywIAAEAxTZ8+Xb/88osMw1CtWrX0z3/+U40bN1ZISIi2b9+uN954Q5s2bdL777+v9evXa9++fZKkHj166NVXX9UVV1zh2S8AAABQiBI1pVasWOHuOAAAAFCAuXPnSpLi4uL0008/qXz58s5111xzjXr37q02bdro22+/1bp16xQUFKSJEydyawQAAOD1StSUatu2rbvjAAAAQAG2bNkiwzD0xBNP5GlI5XI4HHrppZfUsWNHGYahfv36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CxWNegjuRq14Acd6a+THNf5UCwV7OgDYb+XKlTIMQ7fccku+df/97391/vx5hYeHa/r06erQoYOWLFmi/v37KzU1VR988IGef/55D0Rtr/j4eM2aNUuHDh3SihUrtHXrVuejfCtVqqTGjRurffv2ql69uocj9R5r167VtGnTNGvWLKWmpjoPDDExMR6OzD579+71dAg+5dy5c/rhhx/0559/6uzZs7rzzjsVFRXl6bA8hv3Hdf369dOYMWP0008/qV27dvrvf/+b55hmGIZM01RSUpLefvttzZw5U4ZhqHXr1urSpYsHI4e3oBZyDfWQazieuYZakWN9UciP6/yqFnL9pCr4izp16pgOh8P8+uuv862rW7eu6XA4zMceeyzP+48//rhpGIZ5ww032BUmfMCvv/5q/vOf/zRr166d5xT+iIgI85577jEXL15sZmdnezpMeJn9+/ebffv2dd6gMff119OMJ0yYYDZv3tzs2LGjmZOT46Fo4a1+//13Mz4+3nmaevny5Z37UkxMjBkeHp7n36W6devyWHI4UQvBHTieFY1aESg7/lIL0ZQKQBUqVDAdDoe5efPmPO8fPHjQuUOvX78+z7qvvvrKNAzDrFy5sp2hwgsdOXLEfO+998zrrrsuzz9yDofDvOmmm8yPPvrIPHXqlKfDhJfasGGDWaVKFed+c/ETef5axB86dMhZ6H/11Vceihje7NixY+Y999zjvDdJQS+Hw2Hedddd5vHjxz0dLrwItRBKi+NZ4agVAfv4Qy3E5XsBKDMzU5J05syZPO+vWbNGkhQREaHmzZvnWVetWjVJcj6FJVBwOvYFmZmZmjdvnqZNm6YlS5YoKyvLecp1gwYN1K9fP917772Kj4/3cKTwZidPnlS3bt10/Phx1ahRQ88//7xat26txo0bFzg+JiZGXbp00ZdffqmFCxeqc+fONkcMb1e5cmVNnz5dr776qhYuXKikpCQdPnxY2dnZqlKlipo2baquXbuqXr16ng4VXoZaqHioh/LieJYftSLgGf5QC9GUCkCXXHKJUlJStHv3bt1www3O95ctWyZJatGihYKCgvJ8Jj09XZLy3QzUXx04cEDPPvusZs2apfPnzzvfv/baa/M8WnPixIn68MMPFR0draVLlzofcetPhgwZojlz5igtLc1ZXFxyySXq06eP+vXrp2bNmnk4Qu+U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kV4wDxERkdY4KUVERERERERERKor/ZPEiIioSDt37sTgwYNRr149eHl5wdXVFadPn853zL59+zBv3jz873//06hKIiIiItICsyLRfa5aF0BE5Exu376NoUOHYs2aNQDML/3r4uKCMWPGQAiBtm3bIigoSNVayb6lpaXh5MmTSElJwZ07d1Dchc1DhgxRqTIiIiIqLWZFyzEL6QNv3yMA9x9umZaWZtEfe0BAgEpVETmenj17YsuWLZBS4vHHH0eHDh0wY8aMIldaadasGeLj4/Hpp5/ivffe06hqsid79uzB5MmTERkZaXEbIQRyc3NtWBWR82MWIiI1MCsWj1lIX3illI6lpKRgzpw5WLduHU6fPo28vLxi2/CPnahoq1evxubNmyGEwMKFCzFq1CgAwIwZM4ps069fP8TFxWHv3r26CRpUtPnz52Ps2LGQUhb7j2IienTMQkSkJmbF4jEL6Q8npXTq4MGD6NevH27cuKHLP3YXFxervydDKn377bcAgEGDBplCRnFatWoFADhz5ozN6iLHcObMGbz11luQUiI4OBhTp06Fm5sbwsLCIITA77//jps3b+Lo0aNYtGgRjh07hvbt22PBggXw9PTUunwih6P3LAQwDxGpjVnRPGYhfeKklA6lpqaiT58+SE1NhZeXF0aNGgUfHx988sknEEJg8eLFpj/2DRs2IDs7G0899RRGjhypdelWo9fwSbZ19OhRCCHw0ksvWdzG398fAHDjxg1blUUOYs6cOTAYDKhSpQr2798Pb29vxMfHm/YHBgYiMDAQrVq1wquvvor33nsPX3zxBcaOHYsdO3ZoWDmR42EWuo95iEhdzIrmMQvpEyeldGju3LlITU1FmTJlcOjQITRp0gTx8fH45JNPAADDhw83HXvt2jUMHDgQ+/btQ7t27fDZZ59pVLV1TZ482ez+iIgIHD16FADQpEkTPP7446hatSoAICkpCdHR0YiLi4MQAq1bt0aPHj1sXjPZv9TUVADAY489ZnEbRbm/CKolt4yQc9u7dy+EEHjrrbfg7e1t9lghBD777DPExMRg9+7dWLp0KUaMGKFSpUSOj1noPuYhInUxK5rHLKRTknSnbdu2UlEU+eabb5q2xcXFSSGEVBSlwPG3b9+WQUFBUlEUuXPnTjVL1cSUKVOkEEK2aNFCHjlypMjjjhw5Ilu2bCkVRZFT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evVCZmamNkUTERERkSqYFYkK4qQUEZGV7Ny5E0II9OzZs8C+efPmITMzE66urvjyyy9x8uRJfP7551AUBVevXsWiRYs0qJiIiIiI1MKsSFQQJ6WIiKwkMTERANCyZcsC+1avXg0hBIYMGYK3334bwcHB+Oc//4mRI0dCSokNGzaoXS4RERERqYhZkaggTkoREVlJcnIyAMDPzy/f9pSUFMTHxwMABg4cmG9f7969AQCnT59WoUIiIiIi0gqzIlFBnJQiIrIS40Mps7Oz822PjIwEALi7u6N9+/b59vn7+wMA0tPTbV8gEREREWmGWZGoIE5KERFZia+vL4AHl2Yb7dy5EwDQunVruLu759uXm5sLAPDy8lKhQiIiIiLSCrMiUUGclCIispLmzZsDAH744QfTtjt37mDlypUQQuDZZ58t0Oby5csAgKpVq6pTJBERERFpglmRqCBOShERWcmAAQMgpcTGjRsxYMAAzJ07F126dEFycjKEEHj55ZcLtImKigIA1KpVS+1yiYiIiEhFzIpEBQkppdS6CCIiZ5CXl4eOHTsiMjISQgjTdiklRo4cWehSvnXq1MHly5fxySef4KOPPlKzXCIiIiJSEbMiUUG8UoqIyEoURcGWLVswYcIE1KhRA66urqhZsyY++ugjzJ8/v8DxmzZtwqVLlwAAPXr0ULlaIiIiIlITsyJRQbxSiohII2lpabh16xYAXpJNRERERPkxK5IecFKKiIiIiIiIiIhUx9v3iIiIiIiIiIhIdZyUIiIiIiIiIiIi1blqXQARkTPavXs31q1bh5MnTyIlJQV37tyBubulhRBISEhQsUIiIiIi0gqzItF9nJQiIrKi5ORkDBgwAHv37gWAIsOFECLfvoeXBSYiIiIi58SsSJQfJ6WIiKzk3r176N69O06cOAEpJVq0aIHq1asjIiICQggMGjQIN2/exLFjx3Dt2jUIIRASEoKmTZtqXToRERER2RizIlFBXH2PiMhKFi1ahNdeew1CCCxduhRDhw5FfHw8goODIYSAwWAwHbtu3TqMGTMGaWlpWLFiBV544QUNKyciIiIiW2NWJCqIDzonIrKS1atXAwC6deuGoUOHmj22b9++2Lt3L9zd3TFs2DCcP39ejRKJiIiISCPMikQFcVKKiMhKTp48abr0ujB/vzC1bt26GDduHLKysvD111+rUSIRERERaYRZkaggTkoREVnJzZs3AQCBgYGmbe7u7qafb9++XaBNp06dAAC//vqrjasjIiIiIi0xKxIVxEkpIiIrMYaKh8NF+fLlTT9fuXKlQBsPD48i9xERERGR82BWJCqIk1JERFYSEBAAAEhKSjJtq1q1Kry9vQEAUVFRBdrExcUB4DK/RERERM6OWZGoIE5KERFZSUhICADg+PHj+bZ36NABUkp8/fXXyMnJMW1PT0/HZ599BiEEGjdurGqtRERERKQuZkWigjgpRURkJZ06dYKUEhEREfm2v/766wDuB5BmzZph4sSJePPNNxEcHIxz584BAIYMGaJ6vURERESkHmZFooKE/Psj/omIqFTS09PRokULSCmxa9cu1K1b17Rv1KhRWLp0KYAHl18bP367du2KiIgIKAq/JyAiIiJyVsyKRAVxUoqISCVLlizB4sWLER8fj9zcXAQFBWHIkCEYN24cXF1dtS6PiIiIiDTErEh6xEkpIiIiIiIiIiJSHa//IyIiIiIiIiIi1XFSioiIiIiIiIiIVMdJKSIiIiIiIiIiUh2flkZEVELPPvus1d9TCIGdO3da/X2JiIiISF3MikSW44POiYhKSFEUCCFgjY9P4/sIIWAwGKxQHRERERFpiVmRyHK8UoqIqIQ6dOgAIYTWZRARERGRHWJWJLIcr5QiIiIiIiIiIiLV8UHnRERERERERESkOk5KERERERERERGR6jgpRUREREREREREquOkFBFRKUyYMAETJkxAcnJyofsNBgMSExORmJho9n0uXLiAkJAQtGrVyhZlEhEREZEGmBWJLMMHnRMRlYJxqd/Y2Fg0bty4wP74+HgEBwdDURTk5uYW+T7G47jMLxEREZHzYFYksgyvlCIisiHO+xMRERFRUZgVSe84KUVERERERERERKrjpBQREREREREREamOk1JERERERERERKQ6TkoREREREREREZHqOClFRERERERERESq46QUERERERERERGpjpNSRERERERERESkOletCyAicmTz5s2Dn59fge3Jycmmn6dOnVpk+4ePIyIiIiLnwqxIZJ6QUkqtiyAicjSKokAIYZX3klJCCAGDwWCV9yMiIiIibTErElmGV0oREZUS5/SJiIiIqCjMikTF46QUEVEp7N69W+sSiIiIiMhOMSsSWYa37xERERERERERkeq4+h4REREREREREamOk1JERERERERERKQ6TkoREREREREREZHqOClFRERERERERESq46QUERERERERERGpjpNSRERERERERESkOk5KERERERERERGR6jgpRUREREREREREquOkFBERERERERERqY6TUkREREREREREpLr/BzQ7bpUBkE0oAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 1200x800 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 找出最合适的模型\n",
    "plt.figure(figsize=(12, 8))\n",
    "\n",
    "# 平均绝对误差\n",
    "ax =  plt.subplot(1, 2, 1)\n",
    "results.sort_values('mae', ascending = True).plot.bar(y = 'mae', color = 'b', ax = ax, fontsize=20)\n",
    "plt.title('error', fontsize=20) \n",
    "plt.ylabel('MAE', fontsize=20)\n",
    "\n",
    "# 均方根误差\n",
    "ax = plt.subplot(1, 2, 2)\n",
    "results.sort_values('rmse', ascending = True).plot.bar(y = 'rmse', color = 'r', ax = ax, fontsize=20)\n",
    "plt.title('error', fontsize=20) \n",
    "plt.ylabel('RMSE',fontsize=20)\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8d90b772-7b3b-4ffa-9c94-c5a7ea8a3fae",
   "metadata": {},
   "source": [
    "最后我们发现，当训练集:测试集 = 80%:20%时,random forest(随机森林)算法误差最小，故保存该算法为最终的模型,保存到文件中方便我们以后调用"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "6ab82fa5-990a-49b8-b2d8-3efff2b0a39c",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "model = RandomForestRegressor()\n",
    "model.fit(X_train, y_train)\n",
    "filename = \"final_model\"\n",
    "pickle.dump(model, open(filename, 'wb')) "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bed333e8-9a8e-4b21-9830-cd2e78d88b07",
   "metadata": {
    "tags": []
   },
   "source": [
    "## 调用模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "f168e796-6ffb-4a49-ba83-5f0070cfedf4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(3.085822784810127, 4.1968354564006045)"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pickle_in = open(\"final_model\", \"rb\")\n",
    "clf = pickle.load(pickle_in)\n",
    "y_hat = clf.predict(X_test)\n",
    "evaluate_predictions(y_hat, y_test)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6e3ea8e6-0c15-4648-a98a-65af337b6f13",
   "metadata": {},
   "source": [
    "结果和上方相同，证明模型调用成功"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
